连接mysql数据库的操作 有增删改查

用的包有

commons-lang3-3.5

mysql-connector-java-5.1.40-bin

但是实际上也就是

数据查询和数据处理两种

所以对数据库的操作DAO只有两种方法

  1. package com.javaweb.dao;

    import java.lang.reflect.Field;
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.ResultSetMetaData;
    import java.sql.SQLException;
    import java.util.ArrayList;
    import java.util.Date;
    import java.util.List;

    import com.javaweb.utils.StringUtlis;
    import com.javaweb.utils.DBUtlis;
    import com.javaweb.utils.DateUtlis;

    /*
     * 数据库操作类
     * */
    public class DBDao<T> {

        public <T> List<T> findAll(String sql,Class<T> clazz,List<Object> params)throws Exception{
             List<T> list = new ArrayList<T>();
             Connection conn=DBUtlis.getConnection();
             PreparedStatement pstmt = null;
             ResultSet rs = null;
             Field field=null;
             int index=1;
             try {
                 pstmt = conn.prepareStatement(sql);
                 if(params != null && !params.isEmpty()){  
                        for(int i=0; i<params.size(); i++){  
                            pstmt.setObject(index++, params.get(i));  
                        }  
                    }  
                  rs = pstmt.executeQuery();
                ResultSetMetaData metaData  = rs.getMetaData();
                int colsCount= metaData.getColumnCount();
                while(rs.next()){
                    T obj=clazz.newInstance();
                     for(int i = 0; i<colsCount; i++){
                         String colsName = metaData.getColumnName(i+1);
                         Object colsValue = rs.getObject(colsName);
                         if(colsValue == null){  
                             colsValue = "";  
                          }
                         try{
                             field=clazz.getDeclaredField(StringUtlis.camelName(colsName));
                         }catch(NoSuchFieldException e){
                             Class clazz1=clazz.getSuperclass();
                             try{
                                 field=clazz1.getDeclaredField(StringUtlis.camelName(colsName));
                             }catch(NoSuchFieldException n){
                                
                             }
                         }
                         if(field!=null){
                             field.setAccessible(true);
                             if(colsValue instanceof java.sql.Date){
                                 field.set(obj, DateUtlis.getStrDate((Date)colsValue));
                             }else{
                                 field.set(obj, colsValue);  
                             }
                         }
                     }
                     list.add(obj);
                }
            } catch (SQLException e) {
                e.printStackTrace();
            } catch (InstantiationException e) {
                e.printStackTrace();
            } catch (IllegalAccessException e) {
                e.printStackTrace();
            }  catch (SecurityException e) {
                e.printStackTrace();
            }finally{
                DBUtlis.close(conn, pstmt, rs);
            }
            return list;
         }

        public int execute(String sql, List<Object> params) {
            // TODO Auto-generated method stub
            int result = 0;
            Connection conn = null;
            PreparedStatement ps = null;
            int index=1;
            try {
                conn = DBUtlis.getConnection();
                ps = conn.prepareStatement(sql);
                if(params != null && !params.isEmpty()){  
                    for(int i=0; i<params.size(); i++){  
                        ps.setObject(index++, params.get(i));  
                    }  
                }  
                result = ps.executeUpdate();
            } catch (SQLException e) {
                e.printStackTrace();
                result = -1;
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                DBUtlis.close(conn, ps, null);
            }
            return result;
        }
    }

补:后来我才发现这玩意应该有高手写到jar包里面的.....

其实里面的意思也不是数据查询和数据操作

而是得到一个结果和多个结果的区别

对数据的Dao的处理

  1. package com.javaweb.dao;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.List;
  5.  
  6. import org.apache.commons.lang3.StringUtils;
  7.  
  8. import com.javaweb.dao.DBDao;
  9. import com.javaweb.bean.User;
  10.  
  11. public class UserDao {
  12. private DBDao dao=new DBDao();
  13.  
  14. public List<User> findAll(){
  15. List<User> list=new ArrayList<User>();
  16. StringBuffer sql=new StringBuffer();
  17. sql.append(" select id,username,password ");
  18. sql.append(" from user ");
  19. try {
  20. list=dao.findAll(sql.toString(), User.class, null);
  21. } catch (Exception e) {
  22. e.printStackTrace();
  23. }
  24. return list;
  25. }
  26.  
  27. public int add(User User) {
  28. // TODO Auto-generated method stub
  29. if(User==null){
  30. return 0;
  31. }
  32. StringBuffer sql=new StringBuffer();
  33. sql.append(" insert into user(id,username,password) ");
  34. sql.append(" values(?,?,?) ");
  35. List<Object> params =new ArrayList<Object>();
  36. params.add(User.getId());
  37. params.add(User.getUsername());
  38. params.add(User.getPassword());
  39. return dao.execute(sql.toString(), params);
  40. }
  41.  
  42. public int delete(User user) {
  43. // TODO Auto-generated method stub
  44. if(user==null){
  45. return 0;
  46. }
  47. StringBuffer sql=new StringBuffer();
  48. sql.append(" delete from user where id=?");
  49. List<Object> params =new ArrayList<Object>();
  50. params.add(user.getId());
  51. return dao.execute(sql.toString(), params);
  52. }
  53.  
  54. public int update(User user) {
  55. // TODO Auto-generated method stub
  56. if(user==null){
  57. return 0;
  58. }
  59. List<Object> params =new ArrayList<Object>();
  60. StringBuffer sql=new StringBuffer();
  61. sql.append(" update user set ");
  62. if(StringUtils.isNoneBlank(user.getUsername())){
  63. sql.append(" username= ?, ");
  64. params.add(user.getUsername());
  65. }
  66. if(StringUtils.isNoneBlank(user.getPassword())){
  67. sql.append(" password= ?,");
  68. params.add(user.getPassword());
  69. }
  70. String strSql=sql.toString().substring(0, sql.toString().length()-1)+" where id=? ";
  71. params.add(user.getId());
  72. return dao.execute(strSql, params);
  73. }
  74. }

User类

  1. package com.javaweb.bean;
  2.  
  3. public class User {
  4. private String id;
  5.  
  6. private String username;
  7.  
  8. private String password;
  9.  
  10. public String getId() {
  11. return id;
  12. }
  13.  
  14. public void setId(String id) {
  15. this.id = id;
  16. }
  17.  
  18. public String getUsername() {
  19. return username;
  20. }
  21.  
  22. public void setUsername(String username) {
  23. this.username = username;
  24. }
  25.  
  26. public String getPassword() {
  27. return password;
  28. }
  29.  
  30. public void setPassword(String password) {
  31. this.password = password;
  32. }
  33.  
  34. }

servlet

  1. package com.javaweb.action;
  2.  
  3. import java.io.IOException;
  4. import java.util.List;
  5.  
  6. import javax.servlet.ServletException;
  7. import javax.servlet.http.HttpServlet;
  8. import javax.servlet.http.HttpServletRequest;
  9. import javax.servlet.http.HttpServletResponse;
  10.  
  11. import org.apache.commons.lang3.StringUtils;
  12.  
  13. import com.javaweb.bean.User;
  14. import com.javaweb.dao.UserDao;
  15.  
  16. public class ServletSql extends HttpServlet{
  17.  
  18. /**
  19. * 用于版本控制
  20. */
  21. private static final long serialVersionUID = -2357925750878300415L;
  22. private UserDao dao=new UserDao();
  23. @Override
  24. protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  25. // TODO Auto-generated method stub
  26. doPost(req, resp);
  27. }
  28.  
  29. @Override
  30. protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  31. // TODO Auto-generated method stub
  32. //纯碎是用来判断有没有错误
  33. req.setCharacterEncoding("UTF-8");
  34. String op=req.getParameter("op");
  35. if(StringUtils.isNotBlank(op)){
  36. if("queryAll".equalsIgnoreCase(op)){
  37. queryAll(req, resp);
  38. }else if("add".equalsIgnoreCase(op)){
  39. add(req, resp);
  40. }else if("delete".equalsIgnoreCase(op)){
  41. delete(req, resp);
  42. }else if("update".equalsIgnoreCase(op)){
  43. update(req, resp);
  44. }else{
  45.  
  46. }
  47. }
  48. }
  49. private void update(HttpServletRequest req, HttpServletResponse resp) {
  50. // TODO Auto-generated method stub
  51. User user;
  52. try {
  53. user = init(req,resp);
  54. user.setId(req.getParameter("id"));
  55. int rows=dao.update(user);
  56. if(rows>0){
  57. queryAll(req, resp);
  58. }
  59. } catch (ServletException|IOException e) {
  60. // TODO Auto-generated catch block
  61. e.printStackTrace();
  62. }
  63. }
  64.  
  65. private void delete(HttpServletRequest req, HttpServletResponse resp) {
  66. // TODO Auto-generated method stub
  67. User user=new User();
  68. String id=req.getParameter("id");
  69. user.setId(id);
  70. int rows=dao.delete(user);
  71. if(rows>0){
  72. try {
  73. queryAll(req, resp);
  74. } catch (ServletException|IOException e) {
  75. // TODO Auto-generated catch block
  76. e.printStackTrace();
  77. }
  78. }
  79. }
  80.  
  81. public User init(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  82. User user=new User();
  83. String id=req.getParameter("id");
  84. // user.setId(Integer.parseInt(id));
  85. user.setId(id);
  86. String name=req.getParameter("name");
  87. user.setUsername(name);
  88. String password=req.getParameter("password");
  89. // user.setPassword(Integer.parseInt(password));
  90. user.setPassword(password);
  91. return user;
  92. }
  93. public void add(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  94. User User=init(req,resp);
  95. int rows=dao.add(User);
  96. if(rows>0){
  97. queryAll(req, resp);
  98. }else{
  99. resp.sendRedirect("index.jsp");
  100. }
  101. }
  102. public void queryAll(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  103. List<User> list=dao.findAll();
  104. req.setAttribute("list", list);
  105. req.getRequestDispatcher("/queryAll.jsp").forward(req, resp);
  106. // resp.sendRedirect("queryAll.jsp");
  107. }
  108. }

有几个方法后接throws ServletException, IOException应该会更加的整洁

.properties文件

  1. #\u6570\u636e\u8fde\u63a5\u914d\u7f6e
  2. db.driver=com.mysql.jdbc.Driver
  3. db.url=jdbc:mysql://localhost:/javaweb
  4. db.userName=root
  5. db.password=

DateUtils

  1. package com.javaweb.utils;
  2.  
  3. import java.text.ParseException;
  4. import java.text.SimpleDateFormat;
  5. import java.util.Date;
  6.  
  7. public class DateUtlis {
  8.  
  9. /**
  10. * 获取当前日期
  11. * @return
  12. */
  13. public static String getCurrentTime() {
  14. String returnStr = null;
  15. SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  16. Date date = new Date();
  17. returnStr = f.format(date);
  18. return returnStr;
  19. }
  20.  
  21. public static Date getDate(String strDate){
  22. Date date=null;
  23. SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd");
  24. try {
  25. date = f.parse(strDate);
  26. } catch (ParseException e) {
  27. e.printStackTrace();
  28. }
  29. return date;
  30. }
  31.  
  32. public static String getStrDate(Date date){
  33. String strDate=null;
  34. SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd");
  35. strDate = f.format(date);
  36. return strDate;
  37. }
  38. }

DButils

  1. package com.javaweb.utils;
  2.  
  3. import java.sql.CallableStatement;
  4. import java.sql.Connection;
  5. import java.sql.PreparedStatement;
  6. import java.sql.ResultSet;
  7. import java.sql.SQLException;
  8. import java.sql.Statement;
  9.  
  10. /**
  11. * 数据库连接类
  12. * @author SUMMER
  13. *
  14. */
  15. public class DBUtlis {
  16.  
  17. private static String driver;
  18. private static String url;
  19. private static String userName;
  20. private static String password;
  21.  
  22. static{
  23. driver=PropertiesUtil.getProperty("db.driver");
  24. url=PropertiesUtil.getProperty("db.url");
  25. userName=PropertiesUtil.getProperty("db.userName");
  26. password=PropertiesUtil.getProperty("db.password");
  27. }
  28.  
  29. /**
  30. * 创建数据库连接
  31. * @return
  32. */
  33. public static Connection getConnection() {
  34. Connection conn = null;
  35. try {
  36. Class.forName(driver);
  37. conn = java.sql.DriverManager.getConnection(url,userName, password);
  38. } catch (ClassNotFoundException e) {
  39. e.printStackTrace();
  40. } catch (SQLException e) {
  41. e.printStackTrace();
  42. } catch (Exception e) {
  43. e.printStackTrace();
  44. }
  45. return conn;
  46. }
  47.  
  48. public static void close(Connection conn, PreparedStatement psm,ResultSet rs) {
  49. close(rs);
  50. close(psm);
  51. close(conn);
  52. }
  53.  
  54. public static void close(Connection conn, Statement st,ResultSet rs) {
  55. close(rs);
  56. close(st);
  57. close(conn);
  58. }
  59.  
  60. public static void close(Connection conn, PreparedStatement psm) {
  61. close(psm);
  62. close(conn);
  63. }
  64.  
  65. public static void close(Connection conn) {
  66. if (null != conn) {
  67. try {
  68. conn.close();
  69. } catch (SQLException e) {
  70. e.printStackTrace();
  71. }
  72. }
  73. }
  74.  
  75. public static void close(ResultSet rs) {
  76. if (null != rs) {
  77. try {
  78. rs.close();
  79. } catch (SQLException e) {
  80. e.printStackTrace();
  81. }
  82. }
  83. }
  84.  
  85. public static void close(PreparedStatement psm) {
  86. if (null != psm) {
  87. try {
  88. psm.close();
  89. } catch (SQLException e) {
  90. e.printStackTrace();
  91. }
  92. }
  93. }
  94.  
  95. public static void close(CallableStatement proc) {
  96. if (null != proc) {
  97. try {
  98. proc.close();
  99. } catch (SQLException e) {
  100. e.printStackTrace();
  101. }
  102. }
  103. }
  104.  
  105. /**
  106. * @param st
  107. */
  108. public static void close(Statement st) {
  109. if (null != st) {
  110. try {
  111. st.close();
  112. } catch (SQLException e) {
  113. e.printStackTrace();
  114. }
  115. }
  116. }
  117.  
  118. /**
  119. * @param conn
  120. */
  121. public static void rollback(Connection conn) {
  122. if(conn != null) {
  123. try {
  124. conn.rollback();
  125. } catch (SQLException e1) {
  126. e1.printStackTrace();
  127. }
  128. }
  129. }
  130.  
  131. /**
  132. * @param conn
  133. * @param auto
  134. */
  135. public static void setAutoCommit(Connection conn, boolean auto) {
  136. if(conn != null) {
  137. try {
  138. conn.setAutoCommit(auto);
  139. } catch (SQLException e1) {
  140. e1.printStackTrace();
  141. }
  142. }
  143. }
  144.  
  145. public static void main(String[] args) {
  146. DBUtlis.getConnection();
  147. }
  148. }

propertiesUtils

  1. package com.javaweb.utils;
  2.  
  3. import java.io.IOException;
  4. import java.io.InputStream;
  5. import java.util.Properties;
  6.  
  7. /**
  8. * 读取properties文件
  9. * @author SUMMER
  10. *
  11. */
  12. public class PropertiesUtil {
  13.  
  14. private static Properties prop;
  15.  
  16. /**
  17. * 加载.properties文件,使用文件流
  18. */
  19. private static void init() {
  20. prop = new Properties();
  21. InputStream is=PropertiesUtil.class.getResourceAsStream("/config/db.properties");
  22. try {
  23. prop.load(is);
  24. } catch (IOException e) {
  25. e.printStackTrace();
  26. }
  27. }
  28.  
  29. /**
  30. * 获取value
  31. * @param key
  32. * @return
  33. */
  34. public static String getProperty(String key) {
  35. if (prop == null ) {
  36. init();
  37. }
  38. return prop.get(key).toString();
  39. }
  40.  
  41. public static void main(String[] args) {
  42. System.out.println(getProperty("db.driver"));
  43. }
  44. }

StringUtils

  1. package com.javaweb.utils;
  2.  
  3. import java.util.UUID;
  4.  
  5. /**
  6. * 字符串处理工具类
  7. *
  8. */
  9. public class StringUtlis {
  10.  
  11. /**
  12. * 获取唯一ID
  13. * @return
  14. */
  15. public static String getUUID() {
  16. UUID uuid = UUID.randomUUID();
  17. String str = uuid.toString();
  18. return str.replace("-", "");
  19. }
  20.  
  21. /**
  22. * 将驼峰式命名的字符串转换为下划线大写方式。如果转换前的驼峰式命名的字符串为空,则返回空字符串。</br>
  23. * 例如:HelloWorld->HELLO_WORLD
  24. * @param name 转换前的驼峰式命名的字符串
  25. * @return 转换后下划线大写方式命名的字符串
  26. */
  27. public static String underscoreName(String name) {
  28. StringBuilder result = new StringBuilder();
  29. if (name != null && name.length() > 0) {
  30. // 将第一个字符处理成大写
  31. result.append(name.substring(0, 1).toUpperCase());
  32. // 循环处理其余字符
  33. for (int i = 1; i < name.length(); i++) {
  34. String s = name.substring(i, i + 1);
  35. // 在大写字母前添加下划线
  36. if (s.equals(s.toUpperCase()) && !Character.isDigit(s.charAt(0))) {
  37. result.append("_");
  38. }
  39. // 其他字符直接转成大写
  40. result.append(s.toUpperCase());
  41. }
  42. }
  43. return result.toString();
  44. }
  45.  
  46. /**
  47. * 将下划线大写方式命名的字符串转换为驼峰式。如果转换前的下划线大写方式命名的字符串为空,则返回空字符串。</br>
  48. * 例如:HELLO_WORLD->HelloWorld
  49. * @param name 转换前的下划线大写方式命名的字符串
  50. * @return 转换后的驼峰式命名的字符串
  51. */
  52. public static String camelName(String name) {
  53. StringBuilder result = new StringBuilder();
  54. // 快速检查
  55. if (name == null || name.isEmpty()) {
  56. // 没必要转换
  57. return "";
  58. } else if (!name.contains("_")) {
  59. // 不含下划线,仅将首字母小写
  60. return name.substring(0, 1).toLowerCase() + name.substring(1);
  61. }
  62. // 用下划线将原始字符串分割
  63. String camels[] = name.split("_");
  64. for (String camel : camels) {
  65. // 跳过原始字符串中开头、结尾的下换线或双重下划线
  66. if (camel.isEmpty()) {
  67. continue;
  68. }
  69. // 处理真正的驼峰片段
  70. if (result.length() == 0) {
  71. // 第一个驼峰片段,全部字母都小写
  72. result.append(camel.toLowerCase());
  73. } else {
  74. // 其他的驼峰片段,首字母大写
  75. result.append(camel.substring(0, 1).toUpperCase());
  76. result.append(camel.substring(1).toLowerCase());
  77. }
  78. }
  79. return result.toString();
  80. }
  81.  
  82. public static void main(String[] args) {
  83. System.out.println(getUUID());
  84. }
  85.  
  86. }

utils就是工具类了

拿来就用,大多数情况下都有很多高手写jar包含他们

但是我没用那些jar直接上网找的

要求分门别类写,是个好习惯

index.jsp

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <%
  4. String path = request.getContextPath();// 获得当前的项目根目录路径
  5. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path;
  6. //完整路径
  7. %>
  8. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  9. <html>
  10. <head>
  11. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  12. <title>这是首页</title>
  13. </head>
  14. <body>
  15. <table border=0 cellpadding=0 cellspacing=0 style="margin:auto;border-collapse:separate; border-spacing:10px;">
  16. <tr>
  17. <td>
  18. <a href="<%=basePath%>/servletSql?op=queryAll">查询全部</a>
  19. </td>
  20. </tr>
  21. <tr>
  22. <td>
  23. <a href="<%=basePath%>/add.jsp">添加</a>
  24. </td>
  25. </tr>
  26. <tr>
  27. <td>
  28. <a href="<%=basePath%>/delete.jsp">删除</a>
  29. </td>
  30. </tr>
  31. <tr>
  32. <td>
  33. <a href="<%=basePath%>/update.jsp">修改</a>
  34. </td>
  35. </tr>
  36. </table>
  37.  
  38. </body>
  39. </html>

add

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <%
  4. String path = request.getContextPath();// 获得当前的项目根目录路径
  5. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path;
  6. //完整路径
  7. %>
  8. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  9. <html>
  10. <head>
  11. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  12. <title>Insert title here</title>
  13. </head>
  14. <body>
  15. <form action="<%=basePath%>/servletSql?op=add" method="post">
  16. <table align="center" border="1">
  17. <tr>
  18. <th colspan="3">
  19. <label>添加信息</label>
  20. </th>
  21. </tr>
  22. <tr>
  23. <td>Id</td>
  24. <td>
  25. <input type="text" name="id" >
  26. </td>
  27. </tr>
  28. <tr>
  29. <td>用户名</td>
  30. <td>
  31. <input type="text" name="name" >
  32. </td>
  33. </tr>
  34. <tr>
  35. <td>密码</td>
  36. <td>
  37. <input type="text" name="password" >
  38. </td>
  39. </tr>
  40. <tr>
  41. <td>
  42. </td>
  43. <td>
  44. <input type="submit" value="保存">
  45. <input type="reset" value="清空">
  46. </td>
  47. </tr>
  48. </table>
  49. </form>
  50. </body>
  51. </html>

delete

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <%
  4. String path = request.getContextPath();// 获得当前的项目根目录路径
  5. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path;
  6. //完整路径
  7. %>
  8. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  9. <html>
  10. <head>
  11. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  12. <title>Insert title here</title>
  13. </head>
  14. <body>
  15. <form action="<%=basePath%>/servletSql?op=delete" method="post">
  16. <table align="center" border="1">
  17. <tr>
  18. <th colspan="3">
  19. <label>删除信息</label>
  20. </th>
  21. </tr>
  22. <tr>
  23. <td>Id</td>
  24. <td>
  25. <input type="text" name="id" >
  26. </td>
  27. </tr>
  28. <tr>
  29. <td>
  30. </td>
  31. <td>
  32. <input type="submit" value="保存">
  33. <input type="reset" value="清空">
  34. </td>
  35. </tr>
  36. </table>
  37. </form>
  38. </body>
  39. </html>

queryAll

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <%
  4. String path = request.getContextPath();// 获得当前的项目根目录路径
  5. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path;
  6. //完整路径
  7. %>
  8. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  9. <html>
  10. <head>
  11. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  12. <title>Insert title here</title>
  13. </head>
  14. <body>
  15. <form action="<%=basePath%>/servletSql?op=delete" method="post">
  16. <table align="center" border="1">
  17. <tr>
  18. <th colspan="3">
  19. <label>删除信息</label>
  20. </th>
  21. </tr>
  22. <tr>
  23. <td>Id</td>
  24. <td>
  25. <input type="text" name="id" >
  26. </td>
  27. </tr>
  28. <tr>
  29. <td>
  30. </td>
  31. <td>
  32. <input type="submit" value="保存">
  33. <input type="reset" value="清空">
  34. </td>
  35. </tr>
  36. </table>
  37. </form>
  38. </body>
  39. </html>

update

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <%
  4. String path = request.getContextPath();// 获得当前的项目根目录路径
  5. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path;
  6. //完整路径
  7. %>
  8. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  9. <html>
  10. <head>
  11. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  12. <title>Insert title here</title>
  13. </head>
  14. <body>
  15. <form action="<%=basePath%>/servletSql?op=update" method="post">
  16. <table align="center" border="1">
  17. <tr>
  18. <th colspan="3">
  19. <label>修改信息</label>
  20. </th>
  21. </tr>
  22. <tr>
  23. <td>Id</td>
  24. <td>
  25. <input type="text" name="id" >
  26. </td>
  27. </tr>
  28. <tr>
  29. <td>用户名</td>
  30. <td>
  31. <input type="text" name="name" >
  32. </td>
  33. </tr>
  34. <tr>
  35. <td>密码</td>
  36. <td>
  37. <input type="text" name="password" >
  38. </td>
  39. </tr>
  40. <tr>
  41. <td>
  42. </td>
  43. <td>
  44. <input type="submit" value="保存">
  45. <input type="reset" value="清空">
  46. </td>
  47. </tr>
  48. </table>
  49. </form>
  50. </body>
  51. </html>

jsp-2 简单的servlet连接mysql数据库 增删改查的更多相关文章

  1. Java连接MySQL数据库增删改查通用方法

    版权声明:本文为博主原创文章,未经博主允许不得转载. Java连接MySQL数据库增删改查通用方法 运行环境:eclipse+MySQL 以前我们Java连接MySQL数据库都是一个数据库写一个类,类 ...

  2. java连接mysql数据库增删改查操作记录

    1. 连接数据库.得到数据库连接变量 注意连接数据库的时候 (1)打开DB Browser 新建一个Database Driver,注意加入Driver JARs的时候加入的包,我的是mysql-co ...

  3. jsp-3 简单的servlet连接mysql数据库 使用mvc的登录注册

    简单的servlet连接mysql数据库 使用mvc的登录注册 commons-dbutils-1.6 mysql-connector-java-5.1.40-bin c3p0-0.9.5.2 mch ...

  4. Asp.Net操作MySql数据库增删改查

    Asp.Net操作MySql数据库增删改查,话不多说直接步入正题.git源码地址:https://git.oschina.net/gxiaopan/NetMySql.git  1.安装MySQL数据库 ...

  5. python操作mysql数据库增删改查的dbutils实例

    python操作mysql数据库增删改查的dbutils实例 # 数据库配置文件 # cat gconf.py #encoding=utf-8 import json # json里面的字典不能用单引 ...

  6. MySQL数据库(增删改查语句)

    MySQL数据库(增删改查语句)一.登录数据库:---->  mysql -uroot -proot;(对应用户名和密码)二.SQL语句:    数据定义语言DDL  用来定义数据库.表.列,关 ...

  7. Python实现mysql数据库增删改查

    利用python操作mysql数据库用法简单,环境配置容易,本文将实现对库增.删.改.查的简易封装!   1. 环境配置 安装第三方包  ,导入模块 mysql.connector  pip inst ...

  8. python2.7入门---操作mysql数据库增删改查

    Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口.Python 数据库接口支持非常多的数据库,你可以选择适合你项目的数据库: G ...

  9. 安卓版php服务器的mysql数据库增删改查简单案例

    界面: index.php文件: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...

随机推荐

  1. CodeIgniter学习一:基础知识

    1. url片段(CI域名组成说明)        example.com/index.php/test/index   第一部分(test):控制器 第二部分(index):方法,动作 如果第二部分 ...

  2. NHibernate 数据查询之QueryOver<T>

    NHibernate 数据查询之QueryOver<T>   一.限制运算符 Where:筛选序列中的项目WhereNot:反筛选序列中的项目 二.投影运算符 Select:创建部分序列的 ...

  3. Mysql高级之主从复制

    原文:Mysql高级之主从复制 主从复制不就是多台服务器嘛!,一个改变另一个也改变啦,内容其实都一样! 原理: 对数据库进行操作会生成一个文件,binlog(二进制文件),从服务器配置relaylog ...

  4. Android 简介:Android SDK 和开发框架简介

    理解Android软件栈: 库: C/C++库(libc,SSL) Android 运行时可以让Android手机从本质上与一个移动Linux实现区分开来.Dalvik并不是Java虚拟机,是一个基于 ...

  5. socket计划——一个简单的例子

    从一个简单易用TCP样品开始socket计划,的基本过程例如下列: server                                                  client +++ ...

  6. Angularjs 与Ckeditor

    Angularjs 与Ckeditor Angularjs 诞生于Google是一款优秀的前端JS框架,已经被用于Google的多款产品当中.AngularJS有着诸多特性,最为核心的是:MVC.模块 ...

  7. [转]How To Use CSS3 Media Queries To Create a Mobile Version of Your Website

    CSS3 continues to both excite and frustrate web designers and developers. We are excited about the p ...

  8. 史上最全的Matlab资源电子书教程和视频下载合集【超级推荐】

    收藏吧,网上搜集的,费了老大劲了,推荐给有需要的人,^_^.   MATLAB课件2007北京交通大学.zip 4.87 MB   A Guide to MATLAB for Beginners an ...

  9. NUnit详细使用方法

    http://www.ltesting.net/ceshi/open/kydycsgj/nunit/ http://nunit.org/index.php?p=download NUnit详细使用方法 ...

  10. Java字符串转换为日期和时间比较大小

    字符串转换为时间: String data = "2014/7/11"; SimpleDateFormat dfs = new SimpleDateFormat("yyy ...