软件体系结构——图书管理系统单一业务逻辑类
*数据库最好安装在虚拟机里
*框架Hibernate
mybatis
spring
*步骤二三可反
一.创建项目bms
MVC风格
1.M:model,实体类
2.V: view,jsp,html
3.C:controller,servlet
自底向上开发模式:先建立底层模型(实体类)
二.创建实体类
1.包名:公司域名反过来写
2.属性的数据类型:有的数据不是用来加减乘除的所以要设置成字符串类型
3.
(1)带参构造器:
public Book(int bookId, String bookISBN, String bookName, float bookPrice, String bookAuthor, String bookPublisher,
int bookCount) {
super();
this.bookId = bookId;
this.bookISBN = bookISBN;
this.bookName = bookName;
this.bookPrice = bookPrice;
this.bookAuthor = bookAuthor;
this.bookPublisher = bookPublisher;
this.bookCount = bookCount;
}
(2)无参构造器
public Book() {
super();
}
三.依据实体类创建数据库
1.数据库名称跟项目名称相同即可
2.数据库里存中文,所以字符集选utf8mb4
3.一个实体类对应一张表
4.属性对应字段名
四.连接数据库
*创建工具包
*在没有main方法的类里打上"main"字样,选择
main方法即可出现main方法
1.url组成:
jdbc:
mysql:
//(右上到左下是斜杠,反之是反斜杠)
ip地址(自己电脑时localhost,如果数据库安装在了虚拟机或者云服务器上就写那个IP地址)
:3306(mysql的默认端口号)
/bms(要连接的数据库的名称)
*如果后面出现了时区的错误就要加上?以及后面的,新的代码为String url=“jdbc:mysql://localhost:3306/bms?serverTimezone=GMT”;
2.连接数据库需要jar包
*//高版本
String driver=“com.mysql.cj.jdbc.Driver”;
*jar包复制到项目的lib中
*驱动就是jar包
3.sql指令
String sql=“select * from book”;
代表了具体的业务
因为写死了所以妨碍了通用工具类的通用性
3.statement对象(作用是将将sql指令发送给mysql执行)
*比statament对象更好的:PreparedStatement
*如果指定的sql指令不要了,换句话说,不把一个写死的业务放在这里了,那么statement这里的statement对象也要去掉
3.循环输出结果集
*需要的是字段名!=属性名
4.释放资源
7.释放跟数据库相关资源:结果集、Statement对象、连接(先获取的后释放)(非空才释放)
if(rs!=null){
rs.close();
}
if(st!=null){
st.close();
}
if(conn!=null){
conn.close();
}
*打开表进行补充:
设置为自动递增的属性的值不用手动输入,保存(ctrl+s)之后就自动生成序号了