SpringMvc+Spring+MyBatis+Maven+Ajax+Json注解开发 利用Maven的依赖导入不使用架包模式 (实操十一)

简介: SpringMvc+Spring+MyBatis+Maven+Ajax+Json注解开发 利用Maven的依赖导入不使用架包模式 (实操十一)

SpringMvc+Spring+MyBatis+Maven+Ajax+Json注解开发 利用Maven的依赖导入不使用架包模式 (实操十)_星辰镜的博客-CSDN博客

上面的博客是环境配置和Mysql的操作

本文章的目标 完成对数据库中表的数据查序

MySql查序语句:SELECT *  FROM orders

分析表中的数据用java的方式如何存放


原始的三层架构没有写代码的情况没有写查询的功能代码的情况下

控制层

@Autowired定义:

@Autowired是一种注解,可以对成员变量、方法和构造函数进行标注,来完成自动装配的工作,@Autowired标注可以放在成员变量上,也可以放在成员变量的set方法上,也可以放在任意方法上表示,自动执行当前方法,如果方法有参数,会在IOC容器中自动寻找同类型参数为其传值

   IOrderService service;

上面的作用相当于在控制层中注入Service层的数据

package Com.Orders.Controller;
/**
 * SpringMvc 控制层 部分代码省略
 */
@Controller
public class OrderController {
    @Autowired
    IOrderService service;
}

业务逻辑层

@Autowired定义:

@Autowired是一种注解,可以对成员变量、方法和构造函数进行标注,来完成自动装配的工作,@Autowired标注可以放在成员变量上,也可以放在成员变量的set方法上,也可以放在任意方法上表示,自动执行当前方法,如果方法有参数,会在IOC容器中自动寻找同类型参数为其传值

IOrderDao dao;  

上面的作用相当于Service层中注入Dao层的数据

ackage Com.Orders.Service;
import java.util.List;
import java.util.Map;
/**
 * 业务逻辑层的接口
 */
public interface IOrderService {
}
package Com.Orders.Service;
/**
 * 业务逻辑层接口的实现类去实现接口未实现的方法
 */
@Service(value = "sService")
public class OrderServiceImp implements IOrderService {
    @Autowired
    IOrderDao dao;
}

数据访问层

对数据库的数据进行查序

package Com.Orders.Dao;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import java.util.List;
import java.util.Map;
/**
 * 数据反问层操作数据的增删改查
 */
public interface IOrderDao {
}

查询数据库的表中数据的代码

定义一个页面为首页

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>首页内容</title>
</head>
<body>
<div align="center">
        <h1>2022/9/19商品管理系统</h1>
    <a href="Service.html" style="font-size: 20px">点击这里进入查询页面的信息</a>
</div>
</body>
</html>

查询功能的数据跳到Service.html页面:

<a href="Service.html" style="font-size: 20px">点击这里进入查询页面的信息</a>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>查询页面信息</title>
    <style type="text/css">
        *{
            font-family: 楷体;
            font-size: 30px;
        }
        input{
            background-color: beige;
            color: red;
            border-radius: 12px;
        }
    </style>
    <script src="js/jquery-3.2.1.min.js"></script>
</head>
<body>
<div align="center">
    <h1>查询数据库中的信息页面</h1>
    <table>
        <tr>
            <th>订单编号</th>
            <th>用户名</th>
            <th>商品名称</th>
            <th>订单时间</th>
            <th>数量</th>
            <th>单价</th>
            <th>金额</th>
            <th>操作</th>
        </tr>
    </table>
</div>
</body>
</html>


当我们点击超链接的时候跳转到查序功能的页面

查询数据库中的信息页面结果


思考:以上面的两张图的跳转要用几行代码可以实现?

查询数据库表中的数据信息

在Service.html中定义Ajax请求

  <script>
        //Ajax请求访问
        $(function () {
            $.ajax({
                url: "list.do",
                type: "GET",
                data: "",
                success: function (json) {
                     parsTale(json);
                },
                error: function () {
                    alert("用户已经连接失败")
                },
                dataType: "json"
            })
        })
</script>

控制层

@RequestMapping("list.do")
    @ResponseBody
    public Object list() {
//因为查询的数据信息是多条记录 
//所以 在Java中用 List<Map<String, String>>
        List<Map<String, String>> list = service.getList();
    }

业务逻辑层

//Java存放的方式 方法名
List<Map<String, String>> getList();

数据访问层

    // @Select("SELECT * FROM orders") 数据库的Sql语句
     @Select("SELECT * FROM orders")
    List<Map<String, String>> getList();

查询书籍的信息结果返回到页面显示 使用Json解析

 @RequestMapping("list.do")
    @ResponseBody
    public Object list() {
        List<Map<String, String>> list = service.getList();
        return list;
    }

在Service.html中解析数据

   //    定义方解析页面
        function parsTale(jsons) {
            for (var i = 0; i < jsons.length; i++) {
                $("table").append("<tr>" +
                    "<td>" + jsons[i].id + "</td>" +
                    "<td>" + jsons[i].name + "</td>" +
                    "<td>" + jsons[i].foondname + "</td>" +
                    "<td>" + jsons[i].ordertime + "</td>" +
                    "<td>" + jsons[i].count + "</td>" +
                    "<td>" + jsons[i].price + "</td>" +
                    "<td>" + jsons[i].amount + "</td>" +
                    "<td><input type='button' onclick='update(" + jsons[i].id + ")' value='修改按钮'>&nbsp;" +
                    "<input value='增加' type='button' onclick='add()'>&nbsp;" +
                    "<input value='删除' type='button'></td>" +
                    "</tr>")
            }


查询数据库中的信息页面结果

 

总结:为什么要使用框架:最重要的一点是方便

                   

相关文章
|
9月前
|
人工智能 运维 Java
Spring AI Alibaba Admin 开源!以数据为中心的 Agent 开发平台
Spring AI Alibaba Admin 正式发布!一站式实现 Prompt 管理、动态热更新、评测集构建、自动化评估与全链路可观测,助力企业高效构建可信赖的 AI Agent 应用。开源共建,现已上线!
8316 122
|
11月前
|
前端开发 Java API
利用 Spring WebFlux 技术打造高效非阻塞 API 的完整开发方案与实践技巧
本文介绍了如何使用Spring WebFlux构建高效、可扩展的非阻塞API,涵盖响应式编程核心概念、技术方案设计及具体实现示例,适用于高并发场景下的API开发。
754 0
|
9月前
|
安全 前端开发 Java
《深入理解Spring》:现代Java开发的核心框架
Spring自2003年诞生以来,已成为Java企业级开发的基石,凭借IoC、AOP、声明式编程等核心特性,极大简化了开发复杂度。本系列将深入解析Spring框架核心原理及Spring Boot、Cloud、Security等生态组件,助力开发者构建高效、可扩展的应用体系。(238字)
|
10月前
|
安全 数据可视化 Java
AiPy开发的 Spring 漏洞检测神器,未授权访问无所遁形
针对Spring站点未授权访问问题,现有工具难以检测如Swagger、Actuator等组件漏洞,且缺乏修复建议。全新AI工具基于Aipy开发,具备图形界面,支持一键扫描常见Spring组件,自动识别未授权访问风险,按漏洞类型标注并提供修复方案,扫描结果可视化展示,支持导出报告,大幅提升渗透测试与漏洞定位效率。
|
Java 区块链 Maven
关于引入maven项目后出现‘parent.relativePath’ of POM错误时的解决方法
关于引入maven项目后出现‘parent.relativePath’ of POM错误时的解决方法
822 3
|
11月前
|
Java jenkins 应用服务中间件
结合Jenkins与Tomcat,实施Maven项目的自动构建和部署流程。
任何项目构建和部署的自动化流程,总离不开对各个环节精细把控与密切配合。涉及到源代码管理、构建工具、持续集成服务器以及最终的运行时环境的协调。通过上述简洁实用的步骤,可以实现Maven项目从源代码到运行状态的无缝过渡,进而提升软件开发的效率与质量。
553 0
|
Java 测试技术 项目管理
【JavaEE】从 0 到 1 掌握 Maven 构建 Java 项目核心技巧 解锁 Java 项目高效管理实用实例
本文从Maven基础概念讲起,涵盖安装配置、核心概念(如POM与依赖管理)及优化技巧。结合Java Web项目实例,演示如何用Maven构建和管理项目,解决常见问题,助你高效掌握这一强大工具,提升Java开发与项目管理能力。适合初学者及进阶开发者学习。资源链接:[点此获取](https://pan.quark.cn/s/14fcf913bae6)。
482 6
|
Java Maven 开发者
maven项目中官方setting.xml文件
`settings.xml` 是 Maven 的配置文件,用于定义用户或全局级别的构建行为。它包含本地仓库路径、网络代理、服务器认证、仓库镜像及构建配置文件等设置,帮助开发者根据环境定制 Maven 行为,提升构建效率与灵活性。
1695 0
|
XML Java 测试技术
从零开始学 Maven:简化 Java 项目的构建与管理
Maven 是一个由 Apache 软件基金会开发的项目管理和构建自动化工具。它主要用在 Java 项目中,但也可以用于其他类型的项目。
1005 1
从零开始学 Maven:简化 Java 项目的构建与管理
|
Java 关系型数据库 MySQL
Maven——创建 Spring Boot项目
Maven 是一个项目管理工具,通过配置 `pom.xml` 文件自动获取所需的 jar 包,简化了项目的构建和管理过程。其核心功能包括项目构建和依赖管理,支持创建、编译、测试、打包和发布项目。Maven 仓库分为本地仓库和远程仓库,远程仓库包括中央仓库、私服和其他公共库。此外,文档还介绍了如何创建第一个 SpringBoot 项目并实现简单的 HTTP 请求响应。
1331 1
Maven——创建 Spring Boot项目

推荐镜像

更多