javaweb项目上传git
- 创建一个名为Servlet_Exam的多模块maven项目, 其中有三个子模块分别为
- 基础模块Servlet_pojo
- 基础模块Servlet_dao
- web模块Servlet_web
创建父模块Servlet_Exam
添加三个子模块
然后创建两个子模块分别是 Servlet_dao,基础模块Servlet_pojo添加的方式跟创建父模块一致
添加servlet_web模块
其余步骤跟上面一致,不会创建Maven的同志可以看我上一篇博客
这是这几个项目的排版,以上的问题已经解决,下面开始设置其依赖关系: Servlet_web 依赖 Servlet_dao
Servlet_dao 依赖 Servlet_pojo
- 子模块功能实现说明
- 基础模块Servlet_pojo
在该模块内定义一个bean,名称为User;
其相应的属性: id(整型) name(字符串) age(整型) gender(字符)birthday(日期) hobbies(字符串数组)
- 基础模块Servlet_pojo
public class User {
private int id;
private String name;
private int age;
private char gender;
private Date birthday;
private String hobbies;
// TODO: 2022/5/9 生成对应的get和set方法 以及toString
}
- 基础模块Servlet_dao
说明: 1. 数据库使用mysql数据库
2. 创建一张User表, 表中的字段分别为:
1. id 序号
2. name 姓名
3. age 年龄
4. gender 性别
5. birthday 生日
6. hobbies 兴趣爱好
7. createtime 创建时间(日期类型)
8. updatetime 修改时间(日期类型)
create table user(
id int(10),
`name` varchar(50),
age int(10),
gender varchar(50),
birthday date,
hobbies varchar(50),
createTime date,
updateTime date
)
该模块主要用于定义数据库相关操作类与方法
该模块分别创建两个类: a. DBUtil b. UserDao
a. DBUtil在该类中封装jdbc连接mysql数据库方法(1. 数据库驱动获取方法 2.数据库关闭方法)
b. UserDao在该类中封装: 一个插入User对象到数据表的方法实现要求:
- createtime与updatetime两个字段值为当前时间并且为自动生成,不允许使用字符串固定值
1.2. 插入的数据字符串类型使用中文
1.3. id为自动生成(对顺序无要求)
- 一个通过id来得到相应User对象的方法
创建DButil类首先要为Servlet_dao添加依赖
接下来就可以完成DBUtil类的封装了
public class DBUtil {
public static String url="jdbc:mysql://localhost:3306/exam";
public static String drive="com.mysql.jdbc.Driver";
/**
* 初始化
*/
static {
try {
Class.forName(drive);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
/**
* 建立连接
* @return
*/
public static Connection getConnection(){
try {
return DriverManager.getConnection(url,"root","root");
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
/**
* 关闭链接
* @param rs
* @param st
* @param con
*/
public static void close(ResultSet rs, Statement st, Connection con){
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(st!=null){
try {
st.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(con!=null){
try {
con.close();
} catch (SQLException e) {
e.printStackTrace