servlet连接数据库输出数据库中的数据
xml文件配置
<servlet> <!--名字随便取-->
<servlet-name>TwoSaervlet</servlet-name>
<!--是servelt的全类名 主要作用做反射-->
<servlet-class>serverlet.TwoSaervlet</servlet-class>
</servlet>
<servlet-mapping><!--与上面名字一样-->
<servlet-name>TwoSaervlet</servlet-name>
<!--想烦你问servlet的路径 以/开头-->
<url-pattern>/two</url-pattern>
</servlet-mapping>
/*jdbc 链接
1 加载驱动
2 创建连接对象
3 编写sql
4 执行sql
5 处理结果
6 关闭资源
* */
@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
//1 加载驱动
Connection conn=null;
PreparedStatement pre = null;
ResultSet rs = null;
try {
Class.forName("com.mysql.jdbc.Driver");
//2 创建连接对象
String url = "jdbc:mysql://localhost:3306/javaweb";
String name = "root";
String password = "123456";
conn = DriverManager.getConnection(url, name, password);
//3 编写sql 写项目不能用*
String sql = "select * from user";
//4 执行sql
pre = conn.prepareStatement(sql);
// 5 获取结果 处理结果
rs = pre.executeQuery();
while(rs.next()){
servletResponse.setContentType("text/html;;charset=utf-8");
PrintWriter out = servletResponse.getWriter();
out.write(rs.getString("id"));
out.write(rs.getString("username"));
out.write(rs.getString("password"));
out.write(rs.getString("dept"));
out.write(rs.getString("sex"));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
//6、关闭流资源
if (rs != null){
try {
rs.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if (pre != null){
try {
pre.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if (conn != null){
try {
conn.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术