用java和mysql写一个星座管理系统
时间: 2024-04-25 21:27:41 浏览: 139
好的,下面给出一个简单的星座管理系统的实现思路和代码示例。
1. 数据库设计:
首先,需要设计数据库,包括表结构和关系。具体可参考以下示例:
星座表(constellation):
| 字段名 | 数据类型 | 约束 |
| ------ | ----------- | ---------- |
| id | int | 主键、自增 |
| name | varchar(20) | 非空 |
| start | varchar(5) | 非空 |
| end | varchar(5) | 非空 |
2. Java代码实现:
接下来,可以使用Java语言编写星座管理系统。具体步骤如下:
(1)使用JDBC连接MySQL数据库。
(2)编写DAO层代码,包括CRUD操作。
(3)编写Service层代码,实现业务逻辑。
(4)编写Controller层代码,处理用户请求和响应。
(5)编写前端页面,可以使用JSP、HTML、CSS等技术。
3. 源码示例:
以下是一个简单的源码示例,可供参考:
https://github.com/zzzzzhangmiao/Java-MySQL-Constellation-Management-System
该系统包括两个功能:添加星座和查询星座。具体实现方式如下:
(1)添加星座:
```
// ConstellationDAO.java
public boolean add(Constellation constellation) throws SQLException {
Connection conn = null;
PreparedStatement pstmt = null;
boolean flag = false;
try {
conn = DBHelper.getConnection();
String sql = "insert into constellation(name, start, end) values(?,?,?)";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, constellation.getName());
pstmt.setString(2, constellation.getStart());
pstmt.setString(3, constellation.getEnd());
int cnt = pstmt.executeUpdate();
if(cnt > 0) {
flag = true;
}
} finally {
DBHelper.close(pstmt, conn);
}
return flag;
}
// ConstellationService.java
public boolean add(Constellation constellation) {
ConstellationDAO constellationDAO = new ConstellationDAO();
boolean flag = false;
try {
flag = constellationDAO.add(constellation);
} catch (SQLException e) {
e.printStackTrace();
}
return flag;
}
// ConstellationController.java
@RequestMapping("/add")
public ModelAndView add(Constellation constellation) {
ModelAndView mav = new ModelAndView();
ConstellationService constellationService = new ConstellationService();
boolean flag = constellationService.add(constellation);
if(flag) {
mav.setViewName("success");
} else {
mav.setViewName("error");
}
return mav;
}
```
(2)查询星座:
```
// ConstellationDAO.java
public Constellation query(String name) throws SQLException {
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
Constellation constellation = null;
try {
conn = DBHelper.getConnection();
String sql = "select * from constellation where name=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, name);
rs = pstmt.executeQuery();
if(rs.next()) {
constellation = new Constellation();
constellation.setId(rs.getInt("id"));
constellation.setName(rs.getString("name"));
constellation.setStart(rs.getString("start"));
constellation.setEnd(rs.getString("end"));
}
} finally {
DBHelper.close(rs, pstmt, conn);
}
return constellation;
}
// ConstellationService.java
public Constellation query(String name) {
ConstellationDAO constellationDAO = new ConstellationDAO();
Constellation constellation = null;
try {
constellation = constellationDAO.query(name);
} catch (SQLException e) {
e.printStackTrace();
}
return constellation;
}
// ConstellationController.java
@RequestMapping("/query")
public ModelAndView query(String name) {
ModelAndView mav = new ModelAndView();
ConstellationService constellationService = new ConstellationService();
Constellation constellation = constellationService.query(name);
if(constellation != null) {
mav.addObject("constellation", constellation);
mav.setViewName("result");
} else {
mav.setViewName("error");
}
return mav;
}
```
在前端页面中,可以使用表单来输入添加或查询的信息。例如:
```
<!-- 添加星座 -->
<form action="add" method="post">
<label>星座名称:</label>
<input type="text" name="name" /><br />
<label>开始日期:</label>
<input type="text" name="start" /><br />
<label>结束日期:</label>
<input type="text" name="end" /><br />
<input type="submit" value="添加" />
</form>
<!-- 查询星座 -->
<form action="query" method="post">
<label>星座名称:</label>
<input type="text" name="name" /><br />
<input type="submit" value="查询" />
</form>
```
以上是一个简单的星座管理系统的实现示例,仅供参考。实际应用中,还需根据具体需求进行适当调整和完善。
阅读全文