id1 int num st.executeUpdatesql ifnum0 System.out.println“删除成功!!! 主讲 韩顺平CRUD操作-retrieveread使用executeQueryString sql方法完成数据查询操作,示例操作: Statement st conn.createStatement String sql “select from user where id1 ResultSet rs st.executeUpdatesql whilers.next //根据获取列的数据类型,分别调用rs的相应方法 //映射到java对象中 主讲 韩顺平实例练习—新闻管理系统用model1模式完成新闻管理系统,实现如下需求: 1、详见新闻管理系统.docSQL 注入是用户利用某些系统没有对输入数据进行充分的检查,从而进行恶意破坏的行为。
1、statement存在sql注入攻击问题,例如登陆用户名采用 or 11 or name‘ 2、防范 SQL 注入,需要采用PreparedStatement取代Statement。
3、或者通过程序来控制,这个比较麻烦推荐使用PrepareStatement来 完成.根据需要看看是否将 mode1改成mode2模式界面与后台分离.使用execl做出程序框架图. 主讲 韩顺平PreparedStatementPreperedStatement是Statement的子接口,它的实例对象可以通过调用Connection.preparedStatement方法获得,相对于Statement对象而言: PreperedStatement可以避免SQL注入的问题。
Statement会使数据库频繁编译SQL,可能造成数据库缓冲区溢 出。
PreparedStatement 可对SQL进行预编译,从而提高数据库 的执行效率。
并且PreperedStatement对于sql中的参数,允许使用占位符的形 式进行替换,简化sql语句的编写。
练习:使用PreparedStatement改写前面的Statement 主讲 韩顺平jdbc 开发 之 mysql
上一篇:
Android_Ndk开发之串口通信应用技术
下一篇:
盘点士兵的各种搞笑失误,连老纳都笑了!