Jdbc API 的接口
Class.forName(“”);
思路:
a.jdbc连接步骤:1.用class.forName加载字driver类 2.用Drivermanager类获取数据库连接 3.用connection获取statement接口的实现对象 4.用该对象执行相应的数据库操作 5.关闭所有资源
b.优化jdbc的连接过程。创建DBHelp类用来管理jdbc连接。在该类中,初始化是加载driver类,封装connection连接方法,以便随时调用。添加closeAll方法用来关闭所有数据库连接资源。
Jdbc连接和操作数据库
1.Statement方式执行
String url="jdbc:mysql://localhost:3306/test";
String username="root";
String psw="root";
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
//1 加载字节码
Class.forName("com.mysql.jdbc.Driver");
//2 获取连接
conn=DriverManager.getConnection(url, username, psw);
//3 创建Statement对象
stmt=conn.createStatement();
//组织sql语句
String sql="select id,name from test where id >19 order by id";
1.Properate方式执行数据库操作
//要利用PreparedStatement往数据库中插入数据
DBManager dbManager=null;
Connection conn=null;
PreparedStatement pstmt=null;
//加载驱动
dbManager=new DBManager();
//获取连接
conn=dbManager.getConnection();
String sql="insert into test01(id,name,email,des) values(null,?,?,?)";
//创建PreparedStatement对象
try {
//预编译sql语句
pstmt=conn.prepareStatement(sql);
//为sql语句赋值
pstmt.setString(1, "huo"); //?1--->name
pstmt.setString(2, "ssss@sina.com"); // ?2 ---email
pstmt.setString(3, "love you"); //?3 ---des
int k=pstmt.executeUpdate();
System.out.println(k);
} catch (SQLException e) {
e.printStackTrace();
}finally{
dbManager.closeResourece(conn, pstmt, null);
}
Mysql自增长 auto_increment
复习el表达式的应用:
${pageContext.request.contextPath}
相当于jsp脚本:
<%(HttpServletRequest)pageContext.getRequest()).getcontextPath()%>
标准标签库需要导入的命名空间
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
应用:
<input type="checkbox" name="groups" value="${group}"
${fn:contains(address.group,group)==true?'checked':''} >${group}