java-ajax与mysql五表联动

本文详细介绍了使用Java、AJAX和MySQL进行五表联动开发的全过程,包括环境配置、项目框架搭建、数据库表创建、实体类构建、持久层Mapper、业务层Service、控制层Controller的实现,以及HTML页面的制作。涵盖了用户、角色、权限等模块的增删改查功能,并涉及登录注册与Session认证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、前期配置环境

1、首先配置pom.xml

2、配置application.yml(后缀需要手动更改)

二、完成项目文件框架

1、创建工程项目文件

 三、写代码

1、创建数据库表

 2、参照数据库表的属性完成实体包

2.1、User包

2.2、role包

2.3、permission包

3、用户面板的实现

3.1、实现持久层Mapper--UserMapper

配置UserMapper.xml

3.2、实现业务层包Service--UserService

实现UserServiceImpl

3.3、实现控制层包Controller--UserController

3.4、HTML页面

 4、用户管理模块的实现-----增删改查

4.1、实现持久层Mapper--UserMapper

配置UserMapper.xml

4.2、实现业务层包Service--UserService

实现UserServiceImpl

4.3、实现控制层包Controller--UserController

4.4、HTML页面

  5、角色管理模块的实现-----增删改查

5.1、实现持久层Mapper--RoleMapper

配置RoleMapper.xml

5.2、实现业务层包Service--RoleService

实现RoleServiceImpl

5.3、实现控制层包Controller--RoleController

5.4、HTML页面

5.4.2、增加

5.4.3、更改

   6、角色管理模块的实现-----增删改查

6.1、实现持久层Mapper---PermissionMapper

配置PermissionMapper.xml

6.2、实现业务层包Service--PermissionService

实现PermissionSreviceImpl

6.3、实现控制层包Controller--PermissionController

6.4、HTML页面

 7、登录与注册页面

7.1、实现持久层Mapper---LoginMapper

配置LoginMapper.xml

7.2、实现业务层包Service--LoginService

实现LoginServiceImpl

7.3、实现控制层包Controller--LoginController

7.4、HTML页面

8、session认证

8.1、更改实现控制层包Controller--LoginController

8.2、更改Login.html

8.3、更改findAll.html


一、前期配置环境

1、首先配置pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>cn.keji</groupId>
    <artifactId>pro17</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>pro17</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <spring-boot.version>2.3.7.RELEASE</spring-boot.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.4</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.36</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${spring-boot.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.3.7.RELEASE</version>
                <configuration>
                    <mainClass>cn.keji.Pro17Application</mainClass>
                </configuration>
                <executions>
                    <execution>
                        <id>repackage</id>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

</project>

2、配置application.yml(后缀需要手动更改)

server:
  port: 9090
spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/db_24_27
    username: root
    password: 123456
mybatis:
  mapper-locations: mapper/*.xml

二、完成项目文件框架

1、创建工程项目文件

 三、写代码

1、创建数据库表

 2、参照数据库表的属性完成实体包

2.1、User包

package cn.keji.entity;

public class User {
    private Integer id;
    private  String name;
    private  String pwd;

    private  String roleName;
    private  String pName;

    public Integer getId() {
        return id;
    }

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

    public String getName() {
        return name;
    }

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

    public String getPwd() {
        return pwd;
    }

    public void setPwd(String pwd) {
        this.pwd = pwd;
    }

    public String getRoleName() {
        return roleName;
    }

    public void setRoleName(String roleName) {
        this.roleName = roleName;
    }

    public String getpName() {
        return pName;
    }

    public void setpName(String pName) {
        this.pName = pName;
    }
}

2.2、role包

package cn.keji.entity;

public class Role {
    private Integer id;
    private  String rName;

    public Integer getId() {
        return id;
    }

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

    public String getrName() {
        return rName;
    }

    public void setrName(String rName) {
        this.rName = rName;
    }
}

2.3、permission包

package cn.keji.entity;

public class Permission {
    private Integer id;
    private  String pName;

    public Integer getId() {
        return id;
    }

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

    public String getpName() {
        return pName;
    }

    public void setpName(String pName) {
        this.pName = pName;
    }
}

3、用户面板的实现

3.1、实现持久层Mapper--UserMapper

package cn.keji.mapper;

import cn.keji.entity.User;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
@Mapper
public interface UserMapper {
    //用户面板
    public List<User> findAll();


}

配置UserMapper.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
        PUBLIC "-//ibatis.apache.org//DTD Mapper 3.0//EN"
        "http://ibatis.apache.org/dtd/ibatis-3-mapper.dtd">
<mapper namespace="cn.keji.mapper.UserMapper">
    <select id="findAll" resultType="cn.keji.entity.User">
        select a.*,t_name as roleName,p_name as pName from t_user a
left join t_u_r b on a.id=b.u_id
left join t_role c on b.r_id=c.id
left join t_r_p d on c.id =d.r_id
left join t_permission e on d.p_id=e.id
    </select>


</mapper>

3.2、实现业务层包Service--UserService

package cn.keji.service;

import cn.keji.entity.User;

import java.util.List;

public interface UserSrevice {
    public List<User> findAll();


}

实现UserServiceImpl

package cn.keji.service;

import cn.keji.entity.User;
import cn.keji.mapper.UserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;
@Service
public class UserSreviceImpl implements UserSrevice{
    @Autowired
    private UserMapper userMapper;

    @Override
    public List<User> findAll() {
        return userMapper.findAll();
    }

   


}

3.3、实现控制层包Controller--UserController

package cn.keji.controller;

import cn.keji.entity.User;
import cn.keji.mapper.UserMapper;
import cn.keji.service.UserSrevice;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
public class UserController {
    @Autowired
    private UserSrevice userSrevice;

    @RequestMapping("findAll")
    public List<User> findAll(){
        return  userSrevice.findAll();
    }

}

3.4、HTML页面

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script type="text/javascript" src="js/jquery-1.9.1.min.js"></script>
    <script type="text/javascript">
        $(function () {
            ajaxData();
        });
        function ajaxData() {
            $.ajax({
                url:"findAll",
                type:"post",
                data:{},
                dataType:"json",
                success:function (obj) {
                    $(".info").remove();
                    var str="";
                    $.each(obj,function (i) {
                        str +=" <tr class='info'>";
                        str +="     <td>"+obj[i].id+"</td>";
                        str +="     <td>"+obj[i].name+"</td>";
                        str +="     <td>"+obj[i].pwd+"</td>";
                        str +="     <td>"+obj[i].roleName+"</td>";
                        str +="     <td>"+obj[i].pName+"</td>";
                        str +=" </tr>";
                    });
                    $(".tab").append(str);
                }
            });
        }
    </script>
</head>
<body>
<form>
    <table class="tab" cellpadding="0" cellspacing="0" style="background: aquamarine" border="1px solid black">
       <tr>
           <td colspan="5">
               <a href="findAllUser.html">用户管理模块</a>
               <a href="findAllRole.html">角色管理模块</a>
               <a href="findAllpermission.html">权限管理模块</a>
           </td>
       </tr>
        <tr>
            <td>用户编码</td>
            <td>用户名称</td>
            <td>用户密码</td>
            <td>用户角色名称</td>
            <td>用户权限名称</td>
        </tr>
    </table>
</form>
</body>
</html>

 4、用户管理模块的实现-----增删改查

4.1、实现持久层Mapper--UserMapper

 //用户管理模块的增删改查
    public List<User> findAllUser();
    public Integer addUser(User user);
    public Integer delById(Integer id);
    public User findById(Integer id);
    public Integer updateUser(User user);

配置UserMapper.xml

  <!--用户管理模块的增删改查-->
    <select id="findAllUser" resultType="cn.keji.entity.User">
        select * from t_user
    </select>

    <insert id="addUser" parameterType="cn.keji.entity.User">
        insert  into  t_user(name,pwd) values (#{name},#{pwd})
    </insert>

    <delete id="delById" parameterType="java.lang.Integer">
        delete  from t_user where  id=#{id}
    </delete>

    <select id="findById" parameterType="java.lang.Integer" resultType="cn.keji.entity.User">
         select * from t_user where id=#{id}
    </select>

    <update id="updateUser">
        update  t_user set name=#{name},pwd=#{pwd} where id=#{id}
    </update>

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值