web第5天(配置tomcat连接池,web四层的流程)
配置Tomcat的conf/context.xml:连接池
注意:
1.NamingException,说明数据源出问题了
2.想要测试数据源,必须基于tomcat,不能使用测试类
- 需要修改apache-tomcat-8.5.57\conf下的context.xml配置文件
- 将以下代码复制到context.xml配置文件中
<Resource name="jdbc/news"
auth="Container" type="javax.sql.DataSource" maxActive="100"
maxIdle="30" maxWait="10000" username="root" password="bdqn"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/kgcnews"/>
3. 将以下代码复制到BaseDao
public boolean getConnection2() {
try {
/*
import javax.naming.Context;
import javax.naming.InitialContext;
*/
//初始化上下文
Context cxt=new InitialContext();
//获取与逻辑名相关联的数据源对象(拿数据源)
//import javax.sql.DataSource;
DataSource ds=(DataSource)cxt.lookup("java:comp/env/jdbc/news");//jdbc/news逻辑名
conn=ds.getConnection();
} catch (NamingException e) {
e.printStackTrace();
return false;
} catch (SQLException e) {
e.printStackTrace();
return false;
}
return true;
}
service层
作用:业务逻辑层,不做任何数据库操作,只指挥dao层(调用dao层),也需要有接口和对应的实现类
流程:
- 要操作哪个表,就先创建哪个表的entity(实体类)
- 创建对应的dao接口层,写操作数据库的方法(根据实际情况写方法)
- 创建dao接口层的实现类,继承BaseDao,重写接口层的方法,实现具体增删改查的代码
- 创建对应的service接口层,该层方法可以和对应的dao层中的方法一致
- 创建service接口层的实现类,该实现类不需要亲自操作数据库,只需要创建对应dao的对象即可,通过dao对象去调用增删改查方法,还可以实现业务逻辑
(例如:先去哪个表做操作,再去哪个表做操作) - 在对应的jsp页面创建service层对象去调用方法实现功能
注意:原则上,每个数据库表操作都有一对dao层(接口和实现类)和一对service层
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?