layui 中servlet增删改查

1、pox中的配置文件

 <dependencies>
    <!--    josn配置文件-->
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>fastjson</artifactId>
      <version>1.2.51</version>
    </dependency>

    <!--数据库配置文件-->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>8.0.25</version>
    </dependency>

    <!--    servlet配置文件包-->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>javax.servlet-api</artifactId>
      <version>4.0.0</version>
      <scope>provided</scope>
    </dependency>

    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>

    <!--&lt;!&ndash; 数据库连接池模板 &ndash;&gt;
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>druid</artifactId>
      <version>1.1.10</version>
    </dependency>
    &lt;!&ndash; JDBCTemplate模板 &ndash;&gt;
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-jdbc</artifactId>
      <version>5.2.15.RELEASE</version>
    </dependency>-->
  </dependencies>

2、首先定义两个实体类

        t_user

package servlet;

public class t_user {
    private int id;
    private String username;
    private String password;
    private String email;
    private String phone;
    private String avatar;
    private String role;
    private String department;
    private String position;

    public t_user() {
    }

    public t_user(int id, String username, String password, String email, String phone, String avatar, String role, String department, String position) {
        this.id = id;
        this.username = username;
        this.password = password;
        this.email = email;
        this.phone = phone;
        this.avatar = avatar;
        this.role = role;
        this.department = department;
        this.position = position;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getAvatar() {
        return avatar;
    }

    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }

    public String getRole() {
        return role;
    }

    public void setRole(String role) {
        this.role = role;
    }

    public String getDepartment() {
        return department;
    }

    public void setDepartment(String department) {
        this.department = department;
    }

    public String getPosition() {
        return position;
    }

    public void setPosition(String position) {
        this.position = position;
    }

    @Override
    public String toString() {
        return "t_user{" +
                "id=" + id +
                ", username='" + username + '\'' +
                ", password='" + password + '\'' +
                ", email='" + email + '\'' +
                ", phone='" + phone + '\'' +
                ", avatar='" + avatar + '\'' +
                ", role='" + role + '\'' +
                ", department='" + department + '\'' +
                ", position='" + position + '\'' +
                '}';
    }
}

t_role

package servlet;

public class t_role {
    private int id; //行id
    private String name;//名称
    private String description;//位置
    private String permission;

    public t_role() {
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getPermission() {
        return permission;
    }

    public void setPermission(String permission) {
        this.permission = permission;
    }

    public t_role(int id, String name, String description, String permission) {
        this.id = id;
        this.name = name;
        this.description = description;
        this.permission = permission;
    }

    @Override
    public String toString() {
        return "t_role{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", description='" + description + '\'' +
                ", permission='" + permission + '\'' +
                '}';
    }
}

3、封装两个工具类

 DrServlet

package utils;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.lang.reflect.Method;

public class DrServlet extends HttpServlet {
    protected String MyUrl="/error.html";
    @Override
    protected void service(HttpServletRequest Request, HttpServletResponse Response) throws ServletException, IOException {
        String uri= Request.getRequestURI();
        String name=uri.substring(uri.lastIndexOf("/")+1);
        try {
            //获取当前类的Class对象
            Class classType = this.getClass();

            //实例化类
            Object invokeTester = classType.newInstance();

            //获取类中所有对象
            Method[] methods = classType.getDeclaredMethods();
            boolean b=true;
            for (Method method : methods) {
                if(name.equalsIgnoreCase(method.getName())){
                    b=false;
                    //获取类里面的方法对象,参数:1、方法名,2、参数列表(形参)
                    Method addmethod = classType.getMethod(name, new Class[]{HttpServletRequest.class,HttpServletResponse.class});
                    //方法实现,通过实例化的类实现方法
                    Object obj = addmethod.invoke(invokeTester, new Object[]{Request, Response});
                    if(obj!=null){
                        //返回路径
                        String s = obj.toString().toLowerCase();
                        String substring = s.substring(s.lastIndexOf(":") + 1);
                        if(s.indexOf("redirect")!=-1){
                            Response.sendRedirect(Request.getContextPath()+substring);
                        }else if(s.indexOf("forward")!=-1){
                            Request.getRequestDispatcher(substring).forward(Request,Response);
                        }
                    }
                }
            }
            if(b){
                Response.sendRedirect(Request.getContextPath()+MyUrl);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Jdbcutils 工具类

package utils;

import java.sql.*;

public class JDBCUtils {

    private static String driver = "com.mysql.cj.jdbc.Driver";
    private static String url = "jdbc:mysql://localhost:3306/meirong?serverTimezone=UTC";
    private static String username = "root";
    private static String password = "123456";

    static{
        try{
            Class.forName(driver);
        }catch (Exception e) {
            throw new ExceptionInInitializerError(e);
        }
    }
    public static Connection getConnection() throws SQLException {
        return DriverManager.getConnection(url, username,password);
    }

    public static void release(Connection conn, Statement st, ResultSet rs) {
        if (rs != null) {
            try {
                rs.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
            rs = null;

        }
        if (st != null) {
            try {
                st.close();
            } catch (Exception e) {
                e.printStackTrace();
            }

        }
        if (conn != null) {
            try {
                conn.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}

user增删改查

package utils;

import java.sql.*;

public class JDBCUtils {

    private static String driver = "com.mysql.cj.jdbc.Driver";
    private static String url = "jdbc:mysql://localhost:3306/meirong?serverTimezone=UTC";
    private static String username = "root";
    private static String password = "123456";

    static{
        try{
            Class.forName(driver);
        }catch (Exception e) {
            throw new ExceptionInInitializerError(e);
        }
    }
    public static Connection getConnection() throws SQLException {
        return DriverManager.getConnection(url, username,password);
    }

    public static void release(Connection conn, Statement st, ResultSet rs) {
        if (rs != null) {
            try {
                rs.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
            rs = null;

        }
        if (st != null) {
            try {
                st.close();
            } catch (Exception e) {
                e.printStackTrace();
            }

        }
        if (conn != null) {
            try {
                conn.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}

 

package utils;

import java.sql.*;

public class JDBCUtils {

    private static String driver = "com.mysql.cj.jdbc.Driver";
    private static String url = "jdbc:mysql://localhost:3306/meirong?serverTimezone=UTC";
    private static String username = "root";
    private static String password = "123456";

    static{
        try{
            Class.forName(driver);
        }catch (Exception e) {
            throw new ExceptionInInitializerError(e);
        }
    }
    public static Connection getConnection() throws SQLException {
        return DriverManager.getConnection(url, username,password);
    }

    public static void release(Connection conn, Statement st, ResultSet rs) {
        if (rs != null) {
            try {
                rs.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
            rs = null;

        }
        if (st != null) {
            try {
                st.close();
            } catch (Exception e) {
                e.printStackTrace();
            }

        }
        if (conn != null) {
            try {
                conn.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}

 jsp前端页面

user表

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Layui</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" href="//unpkg.com/layui@2.6.8/dist/css/layui.css">
    <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
    <!-- 注意:如果你直接复制所有代码到本地,上述css路径需要改成你本地的 -->
</head>
<body>
<div class="site-text" style="margin: 5%; display: none" id="window" target="test123">
    <form class="layui-form" id="book" method="post" lay-filter="example">
        <!-- <div class="layui-form-item">
             <label class="layui-form-label">编号</label>
             <div class="layui-input-block">
                 <input type="text" id="id" name="id" lay-verify="title" autocomplete="off" placeholder="请输入编号"
                        class="layui-input">
             </div>
         </div>-->

        <div class="layui-form-item">
            <label class="layui-form-label">用户名</label>
            <div class="layui-input-block">
                <input type="text" id="username" name="username1" lay-verify="title" autocomplete="off" placeholder="请输入用户名"
                       class="layui-input">
            </div>
        </div>

        <div class="layui-form-item">
            <label class="layui-form-label">密码</label>
            <div class="layui-input-block">
                <input type="text" id="password" name="password" lay-verify="title" autocomplete="off" placeholder="请输入密码"
                       class="layui-input">
            </div>
        </div>

        <div class="layui-form-item">
            <label class="layui-form-label">邮箱</label>
            <div class="layui-input-block">
                <input type="text" id="email" name="email" lay-verify="title" autocomplete="off" placeholder="请输入邮箱"
                       class="layui-input">
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">手机号</label>
            <div class="layui-input-block">
                <input type="text" id="phone" name="phone" lay-verify="title" autocomplete="off" placeholder="请输入手机号"
                       class="layui-input">
            </div>
        </div>

        <div class="layui-form-item">
            <label class="layui-form-label">头像</label>
            <div class="layui-input-block">
                <input type="text" id="avatar" name="avatar" lay-verify="title" autocomplete="off" placeholder="请输入头像"
                       class="layui-input">
            </div>
        </div>

        <div class="layui-form-item">
            <label class="layui-form-label">权限</label>
            <div class="layui-input-block">
                <input type="text" id="role" name="role" lay-verify="title" autocomplete="off" placeholder="请输入权限"
                       class="layui-input">
            </div>
        </div>

        <div class="layui-form-item">
            <label class="layui-form-label">部门</label>
            <div class="layui-input-block">
                <input type="text" id="department" name="department" lay-verify="title" autocomplete="off" placeholder="请输入部门"
                       class="layui-input">
            </div>
        </div>

        <div class="layui-form-item">
            <label class="layui-form-label">职位</label>
            <div class="layui-input-block">
                <input type="text" id="position" name="position" lay-verify="title" autocomplete="off" placeholder="请输入职位"
                       class="layui-input">
            </div>
        </div>

        <!--<div class="layui-form-item">
            <div class="layui-input-block">
                <button class="layui-btn" lay-submit lay-filter="demo1">确认</button>
            </div>
        </div>-->

    </form>
</div>
<div class="demoTable">
    搜索用户名:
    <div class="layui-inline">
        <input class="layui-input" name="name" id="demoReload" autocomplete="off">
    </div>
    <button class="layui-btn" data-type="reload" id="bbttnn">搜索</button>
</div>

<table class="layui-table" lay-data="{width: 1200, height:330, url:'/Servlet_war/user/list', page:false, id:'idTest'}"
       lay-filter="demo">
    <thead>
    <tr>
        <th lay-data="{type:'checkbox', fixed: 'left'}"></th>
        <th lay-data="{field:'id', width:80, sort: true}"> 编号</th>
        <th lay-data="{field:'username', width:80}"> 用户名</th>
        <th lay-data="{field:'password', width:80, sort: true}"> 密码</th>
        <th lay-data="{field:'email', width:80}"> 邮箱</th>
        <th lay-data="{field:'phone', width:160}"> 手机号</th>
        <th lay-data="{field:'avatar', width:80, sort: true}"> 头像</th>
        <th lay-data="{field:'role', width:80}"> 权限</th>
        <th lay-data="{field:'department', width:135, sort: true}"> 部门</th>
        <th lay-data="{field:'position', width:80, sort: true}"> 职位</th>
        <th lay-data="{fixed: 'right', width:178, align:'center', toolbar: '#barDemo'}"></th>
    </tr>
    </thead>
</table>

<!--<button id="inst" class="layui-btn">添加</button>-->

<script type="text/html" id="barDemo">
    <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="insert" id="inst">添加</a>
</script>


<script src="//unpkg.com/layui@2.6.8/dist/layui.js"></script>
<script src="js/jquery.js" charset="utf-8"></script>
<!-- 注意:如果你直接复制所有代码到本地,上述 JS 路径需要改成你本地的 -->
<script>
    layui.use(['table','form'], function () {
        var upOrIns;
        var table = layui.table;
        var form = layui.form;
        //监听工具条
        table.on('tool(demo)', function (obj) {
            var data = obj.data;
            if (obj.event === 'del') {
                layer.open({
                    btn: ['确认', '取消'],
                    content: '真的删除行么',
                    skin: 'layui-layer-molv',
                    yes: function (index) {
                        obj.del();
                        layer.close(index);
                        $.post("/Servlet_war/user/del", {"id": data.id});
                    }, no: function () {
                        layer.close(index);
                    }
                });
            } else if (obj.event === 'edit') {
                layer.open({
                    btn:["确认","取消"]
                    , type: 1
                    , title: ['修改信息']
                    , shadeClose: true
                    , shade: 0
                    , maxmin: true
                    , content: $("#window")
                    , success: function (layer, index) {
                        $('#username').val(data.username);
                        $('#password').val(data.password);
                        $('#email').val(data.email);
                        $('#phone').val(data.phone);
                        $('#avatar').val(data.avatar);
                        $('#role').val(data.role);
                        $('#department').val(data.department);
                        $('#position').val(data.position);
                    }, end: function () {
                        $("input[type=text]").val("")
                        $("#window").hide();
                    },yes:function (index) {
                        $.post("/Servlet_war/user/update", {
                            "id":data.id,
                            "username":$('#username').val(),
                            "password":$("#password").val(),
                            "email":$("#email").val(),
                            "phone":$("#phone").val(),
                            "avatar":$("#avatar").val(),
                            "role":$("#role").val(),
                            "department":$("#department").val(),
                            "position":$("#position").val()
                        },function () {
                            window.location.reload();
                        });
                        layer.close(index);
                    }
                });
            }
            else if (obj.event === 'insert') {
                layer.open({
                    btn:["确认","取消"]
                    , type: 1
                    , title: ['添加信息']
                    , shadeClose: true
                    , shade: 0
                    , maxmin: true
                    , content: $("#window")
                    , success: function (layer, index) {
                        /*$('#username').val(data.username);
                        $('#password').val(data.password);
                        $('#email').val(data.email);
                        $('#phone').val(data.phone);
                        $('#avatar').val(data.avatar);
                        $('#role').val(data.role);
                        $('#department').val(data.department);
                        $('#position').val(data.position);*/
                    }, end: function () {
                        $("input[type=text]").val("")
                        $("#window").hide();
                    },yes:function (index) {
                        $.post("/Servlet_war/user/add", {
                            "username":$('#username').val(),
                            "password":$("#password").val(),
                            "email":$("#email").val(),
                            "phone":$("#phone").val(),
                            "avatar":$("#avatar").val(),
                            "role":$("#role").val(),
                            "department":$("#department").val(),
                            "position":$("#position").val()
                        },function () {
                            window.location.reload();
                        });
                        layer.close(index);
                    }
                });
            }
        });
        /*        $("#inst").click(function(){
                    layer.open({
                        btn:["确认","取消"]
                        , type: 1
                        , title: ['添加信息']
                        , shadeClose: true
                        , shade: 0
                        , maxmin: true
                        , content: $("#window")
                        , success: function (layer, index) {

                        }, end: function () {
                            $("#window").hide();
                        },yes:function (index) {
                            $.post("/test/user/add",{
                                "username":$('#username').val(),
                                "password":$("#password").val(),
                                "email":$("#email").val(),
                                "phone":$("#phone").val(),
                                "avatar":$("#avatar").val(),
                                "role":$("#role").val(),
                                "department":$("#department").val(),
                                "position":$("#position").val()
                            },function () {
                                window.location.reload();
                            });
                            layer.close(index);
                        }
                    });
                });*/
        $("#bbttnn").click(function () {
            table.reload('idTest', {url: '/Servlet_war/user/name?name='+$("#demoReload").val() ,
                where: {}},false)
        });
        /*$("#bbttnn").click(function () {
            table.reload('demo', {url: '/Servlet_war/user/name?name='+$("#find").val() ,
                where: {}},false)
        });*/
    });
</script>

</body>
</html>

 role表

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
    <title>JSP - Hello World</title>
    <!-- 引入 layui.css -->
    <link rel="stylesheet" href="//unpkg.com/layui@2.6.8/dist/css/layui.css">
    <!-- 引入 layui.js -->
    <script src="//unpkg.com/layui@2.6.8/dist/layui.js"></script>
    <script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
</head>
<body>
<div class="demoTable">
    搜索ID:
    <div class="layui-inline">
        <input class="layui-input" name="name2" id="demoReload" autocomplete="off">
    </div>
    <button class="layui-btn" data-type="reload" id="bbttnn">搜索</button>
</div>
<%--这是编辑的页面--%>
<div class="site-text" style="margin: 5%; display: none" id="window"  target="test123">
    <form class="layui-form" id="book" method="post" lay-filter="example">
        <div class="layui-form-item">
            <label class="layui-form-label">id</label>
            <div class="layui-input-block">
                <input type="text" id="id" name="id" lay-verify="title" autocomplete="off" readonly="value" class="layui-input">
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">名称</label>
            <div class="layui-input-block">
                <input type="text" id="id1" name="name" lay-verify="title" autocomplete="off" placeholder="请输入名称" class="layui-input">
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">描述</label>
            <div class="layui-input-block">
                <input type="text" id="id2" name="description" lay-verify="title" autocomplete="off" placeholder="请输入描述" class="layui-input">
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">权限列表</label>
            <div class="layui-input-block">
                <input type="text" id="id3" name="permission" lay-verify="title" autocomplete="off" placeholder="请输入权限列表" class="layui-input">
            </div>
        </div>
    </form>
</div>


<%--这是添加的页面--%>
<div class="site-text" style="margin: 5%; display: none" id="w1"  target="test123">
    <form class="layui-form" id="book_2" method="post" lay-filter="example">
        <div class="layui-form-item">
            <label class="layui-form-label">名称</label>
            <div class="layui-input-block">
                <input type="text" id="id11" name="name1" lay-verify="title" autocomplete="off" placeholder="请输名称" class="layui-input">
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">描述</label>
            <div class="layui-input-block">
                <input type="text" id="id12" name="description1" lay-verify="title" autocomplete="off" placeholder="请输入描述" class="layui-input">
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">权限列表</label>
            <div class="layui-input-block">
                <input type="text" id="id13" name="permission1" lay-verify="title" autocomplete="off" placeholder="请输入权限列表" class="layui-input">
            </div>
        </div>
    </form>
</div>

<table class="layui-table" lay-data="{width: 1000, height:600, url:'/Servlet_war/role/list', page:true, id:'idTest'}" lay-filter="demo">
    <thead>
    <tr>
        <th lay-data="{type:'checkbox', fixed: 'left'}"></th>
        <th lay-data="{field:'id', width:80, sort: true, fixed: true}">ID</th>
        <th lay-data="{field:'name', width:150}">名称</th>
        <th lay-data="{field:'description', width:150, sort: true}">描述</th>
        <th lay-data="{field:'permission', width:300}">权限列表</th>
        <th lay-data="{fixed: 'right', width:200, align:'center', toolbar: '#barDemo'}"></th>
    </tr>
    </thead>
</table>
<script type="text/html" id="barDemo">
    <a class="layui-btn layui-btn layui-btn-sm" lay-event="edit">编辑</a>
    <a class="layui-btn layui-btn-danger layui-btn layui-btn-sm" lay-event="del">删除</a>
    <a class="layui-btn layui-btn-normal  layui-btn layui-btn-sm" lay-event="detail">添加</a>
</script>
<script>
    layui.use(['table','jquery'], function(){
        var table = layui.table;
        //监听表格复选框选择
        table.on('checkbox(demo)', function(obj){
            console.log(obj)
        });
        //监听工具条
        table.on('tool(demo)', function(obj){
            var data = obj.data;
            if(obj.event === 'edit'){
                layer.open({
                    type: 1 //Page层类型
                    ,skin: 'layui-layer-molv'
                    ,area: ['380px', '400px']
                    ,title: ['编辑信息','font-size:18px']
                    ,btn: ['确定', '取消']
                    ,shadeClose: true
                    ,shade: 0 //遮罩透明度
                    ,maxmin: true //允许全屏最小化
                    ,content:$("#window")  //弹窗路径
                    ,success:function(layero,index){
                        $('#id').val(data.id);
                        $('#id1').val(data.name);
                        $('#id2').val(data.description);
                        $('#id3').val(data.permission);
                    },yes:function(index,layero){
                        $("#window").hide();
                        $.post("/Servlet_war/role/update",
                            {"id":data.id,"name":$("#id1").val(),"description":$("#id2").val(),"permission":$("#id3").val()},function (){
                                window.location.reload();
                            });
                        layer.close(index);
                    },no:function(index,layero){
                        $("#window").hide();
                        $("#window").css( "display:none");
                        layer.close(index);
                    },end:function (){
                        $("#window").hide();
                    }
                });
            } else if(obj.event === 'del'){
                layer.confirm('真的删除行么', function(index){
                    obj.del();
                    layer.close(index);
                    $.post("/Servlet_war/role/del",{"id":data.id});
                });
            } else if(obj.event === 'detail'){
                layer.open({
                    type: 1 //Page层类型
                    ,skin: 'layui-layer-molv'
                    ,area: ['380px', '400px']
                    ,title: ['添加信息','font-size:18px']
                    ,btn: ['确定', '取消']
                    ,shadeClose: true
                    ,shade: 0 //遮罩透明度
                    ,maxmin: true //允许全屏最小化
                    ,content:$("#w1")  //弹窗路径
                    ,success:function(layero,index){
                    },yes:function(index,layero){
                        $("#w1").hide();
                        $.post("/Servlet_war/role/add",{"name1":$("#id11").val(),"description1":$("#id12").val(),"permission1":$("#id13").val()},function (){
                            window.location.reload();
                        });
                        layer.close(index);
                    },no:function(index,layero){
                        $("#w1").hide();
                        $("#w1").css( "display:none");
                        layer.close(index);
                    },end:function (){
                        $("#w1").hide();
                    }
                });

            }
        });
        $("#bbttnn").click(function () {
            table.reload('idTest', {url: '/Servlet_war/role/list?name2='+$("#demoReload").val() ,where: {}},false)
        });
    });

</script>

</body>
</html>

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Servlet 是 Java Web 开发常用的技术之一,可以用来处理客户端请求并生成响应。使用 Servlet 可以实现增删改查操作,以下是一个简单的示例: 增加操作: ``` protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String name = request.getParameter("name"); String age = request.getParameter("age"); // 将数据插入数据库 // ... } ``` 删除操作: ``` protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String id = request.getParameter("id"); // 根据 id 从数据库删除数据 // ... } ``` 修改操作: ``` protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String id = request.getParameter("id"); String name = request.getParameter("name"); String age = request.getParameter("age"); // 根据 id 更新数据库的数据 // ... } ``` 查询操作: ``` protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String id = request.getParameter("id"); // 根据 id 从数据库查询数据 // ... } ``` 以上示例,我们可以通过 HttpServletRequest 对象获取客户端传递的参数,然后根据不同的操作,通过 JDBC 等方式操作数据库。需要注意的是,这只是一个简单的示例,实际开发还需要考虑更多的细节和安全性问题。 ### 回答2: Servlet 增删改查是指使用Servlet技术实现数据库的增加、删除、修改和查询操作。 首先,对于增加操作,可以通过在Servlet编写相应的代码进行数据库记录的插入。可以使用数据库连接池获取数据库连接,然后通过SQL语句将数据添加到数据库。例如,可以使用PreparedStatement来实现增加操作,通过设置参数向SQL语句传递数据。 其次,对于删除操作,可以通过在Servlet编写代码从数据库删除记录。可以根据需要构建SQL语句,使用PreparedStatement设置参数来删除指定记录。 然后,对于修改操作,可以通过在Servlet编写代码更新数据库的记录。可以根据需要构建SQL语句,使用PreparedStatement设置参数来更新指定记录。 最后,对于查询操作,可以通过在Servlet编写代码从数据库查询记录。可以根据需要构建SQL语句,并使用PreparedStatement设置参数来执行查询操作。查询结果可以使用ResultSet对象接收,然后将结果转化为Java对象展示给用户。 在编写Servlet增删改查代码时,需要注意安全性和效率。可以使用防止SQL注入的方法,如使用预编译语句。另外,可以考虑使用事务来保证数据的一致性和完整性。 总之,使用Servlet技术可以实现数据库的增删改查操作,通过编写相应的代码,使用SQL语句和PreparedStatement进行数据库操作。这样可以方便地对数据库进行数据管理和查询,并将结果展示给用户。 ### 回答3: Servlet 是一种用于构建动态 Web 应用程序的 Java 技术。在开发过程Servlet 可以实现对数据的增加、删除、修改和查询操作。 首先,我们要了解 Servlet 和 Java 数据库连接的方法。可以使用 Java 的 JDBC API 来连接数据库,通过执行 SQL 语句来实现对数据库的操作。 在 Servlet ,我们可以通过实现 `doGet()` 和 `doPost()` 方法来处理 GET 和 POST 请求,以便进行数据的增删改查操作。 对于数据的增加操作,我们可以在 `doPost()` 方法接收前端用户传递的数据,然后构建 SQL 语句将数据插入数据库。例如,可以使用 `PreparedStatement` 来执行插入操作,将数据插入到数据库的指定表。 对于数据的删除操作,我们可以在 `doGet()` 或 `doPost()` 方法接收前端传递的删除条件,然后构建 SQL 语句进行删除操作。例如,可以使用 `PreparedStatement` 来执行删除操作,将满足条件的数据从数据库删除。 对于数据的修改操作,我们可以通过接收前端传递的修改条件和修改值,然后构建 SQL 语句进行更新操作。例如,可以使用 `PreparedStatement` 来执行更新操作,将满足条件的数据在数据库进行更新。 对于数据的查询操作,我们可以在 `doGet()` 或 `doPost()` 方法接收前端传递的查询条件,然后构建 SQL 语句进行查询操作。例如,可以使用 `Statement` 或 `PreparedStatement` 来执行查询操作,将查询结果返回给前端。 通过以上方式,我们可以在 Servlet 实现对数据的增删改查操作,从而实现动态的数据处理和展示。同时,需要注意在进行数据库操作时,要确保数据库连接的正确关闭,以及对输入的数据进行合法性验证,防止 SQL 注入等安全问题的发生。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值