添加数据
public void create(Model m){
Connection conn=null;PreparedStatement stmt=null;
try {
/*Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@" + "localhost" + ":1521:orcl";
conn = DriverManager.getConnection(url, "javakc21", "javakc21");*/
conn=this.getConn();
stmt = conn.prepareStatement("insert into (stuid stuname,stuage)"
+ "values+(?,?,?)");
//想占位符中放值
stmt.setString(1, m.getStuid());
stmt.setString(2, m.getStuanme());
stmt.setString(2, m.getStuage());
stmt.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
修改数据
Connection conn=null;
/*//这个类用完一次必须关闭 否则报错
Statement stmt=null;*/
PreparedStatement stmt=null;
try {
conn=this.getConn();
//stmt = conn.createStatement();
stmt=conn.prepareStatement(" update tab_student set stuName=?,stuAge=? where stuId=?");
//从外边传进来的值
//下边的值和上边的问号要对应
stmt.setString(1, m.getStuanme());
stmt.setString(2,m.getStuage());
stmt.setString(3, m.getStuid());
stmt.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
删除数据
Connection conn=null;
PreparedStatement stmt=null;
try {
conn=this.getConn();
stmt = conn.prepareStatement("delete from tab_student where stuId=?");
//想占位符中放值
stmt.setString(1, m.getStuid());
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
* 数据库连接方法
* @return
*/
public Connection getConn(){
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@" + "localhost" + ":1521:orcl";
conn = DriverManager.getConnection(url, "javakc21", "javakc21");
stmt = conn.createStatement();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
* 拼接字符串
* @param sql
* @param m
* @return
*/
public String preparedSql(String sql,Model m){
//if m为空 也就是没有条件
if(m!=null){
//保证穿件来的字符串不为空,并且没有空格
if(m.getStuanme()!=null && m.getStuanme().trim().length()>0){
sql=sql+"and stuname=+'"+m.getStuanme()+"'";
}
}
return sql;
}
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
public List<Model> query(Model m){
List<Model> list = new ArrayList();
Connection conn = null;
PreparedStatement stmt = null;
ResultSet rs = null;
String sql="";
try {
conn=this.getConn();
//拼接字符串
sql="select * from tab_student where 1=1";
sql=this.preparedSql(sql, m);
stmt = conn.prepareStatement(sql);
rs = stmt.executeQuery();
while (rs.next()) {
Model m1 = new Model();
//收集参数
String stuid=rs.getString(1);
String stuname=rs.getString(2);
String stuage=rs.getString(3);
//组织参数
m1.getStuid();
m1.getStuanme();
m1.getStuage();
list.add(m1);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
return list;
}
}