提示:

1.单表查询多条数据用 list

mapper层

1.1单表查询单条数据用  对象

2.两表关联查多条 list>

2.1两表联查查一条 map

一.具体步骤如下

表结构:

1.创建实体类:

2.创建mapper层  ,里面放的是接口还有用注解写sql语句

3.创建service层 里面有接口和接口的实现类

3.1接口的作用就是给用户看的方法

j接口的实现类:

4.创建controller层

package cn.kgc.controller;

import cn.kgc.service.DevicesService;

import cn.kgc.service.RepairService;

import cn.kgc.vo.Devices;

import cn.kgc.vo.Repair;

import com.github.pagehelper.PageHelper;

import com.github.pagehelper.PageInfo;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestParam;

import org.springframework.web.bind.annotation.ResponseBody;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

/**

* Created by 86182 on 2019/7/24.

* 因为用的是@Controller和@ResponseBody 所以他们的返回值是 集合

*/

@Controller

public class DevicesController {

@Autowired

private DevicesService devicesService;

@Autowired

private RepairService repairService;

//首页的查询所有

@RequestMapping("/main.do")

@ResponseBody

//这里分页插件 pageno代表的是页码

public Map showDevices(@RequestParam(value ="pageno",required = false,defaultValue = "1")Integer pageno){

Map map = new HashMap<>();

//调用分页的方法

PageHelper.startPage(pageno,2);

List list = devicesService.showDevices();

//使用pageinfo这个方法,将查到的东西放到里面,他里面封装了很多信息

PageInfo pageInfo = new PageInfo(list);

System.out.println(pageInfo);

map.put("list",list);

map.put("pageInfo",pageInfo);

return map;

}

//首页的条件查询

@ResponseBody

@RequestMapping("/info.do")

public HashMap showDeviceName(String deviceName){

HashMap map = new HashMap<>();

List list = devicesService.showDeviceName(deviceName);

map.put("list",list);

return map;

}

//首页有一个点击的查询

@ResponseBody

@RequestMapping("/xinxi.do")

public List> showData(@RequestParam(value = "deviceName",required = false) String deviceName){

List> list = repairService.showRepair(deviceName);

return list;

}

//添加一条信息

@ResponseBody

@RequestMapping("/tianjia.do")

public String addRepair(Repair repair){

repairService.add(repair);

return "main.jsp";

}

}

第二阶段前台html页面

比如说主页面main.html

js页面代码如下:  这种呢是前台页面什么都没有,需要往页面上拼接值

$(function () {

init(1);

})

function init (pageno) {

$.ajax({

url:"main.do",

type:"post",

dataType:"json",

data:{"pageno":pageno},

async:true,

success:function (obj) {

console.log(obj);

$("#nihao").html(" ") //作用就是清空当前页面

var str="";

$.each(obj.list,function(i) {

str+="

";

str+="

"+obj.list[i].id+"";

str+="

"+obj.list[i].deviceName+"";

str+="

"+obj.list[i].deviceModel+"";

if(obj.list[i].usage==0){

str+="

正常";

}else {

str+="

不正常";

}

str+="

"+obj.list[i].purchaseTime+"";

str+="

"+obj.list[i].assetCode+"";

str+="

"+obj.list[i].devicePrice+"";

str+="

"+obj.list[i].period+"";

str+="

";

})

str+="

";

str+="

第"+obj.pageInfo.pageNum+"/"+obj.pageInfo.pages+"页";

if (obj.pageInfo.pageNum>1){

str+="

首页";

str+="

上一页";

}else {

str+="

首页";

str+="

上一页";

}

if(obj.pageInfo.pageNum

str+="

下一页";

str+="

尾页";

}else {

str+="

下一页";

str+="

尾页";

}

str+="

共"+obj.pageInfo.total+"条";

str+="

";

$("#nihao").append(str);

},

error:function () {

alert("error")

}

});

}

还有一种就是前台页面有写的输入框之类的,需要用ajax往页面里面输入值:

前台界面:

后台js

$(function () {

var deviceName = GetQueryString("deviceName"); //括号里放地址栏传参变量

console.log(deviceName);

button(deviceName);

})

//设备详细信息

function button(deviceName) {

$.ajax({

url:"xinxi.do",

type:"post",

dataType:"json",

data:{"deviceName":deviceName},

async:true,

success:function (obj) {

console.log(obj);

$("input[name='id']").val(obj[0].id);

$("input[name='purchaseTime']").val(obj[0].purchaseTime);

$("input[name='deviceName']").val(obj[0].deviceName);

$("input[name='usage']").val(obj[0].usage);

$("input[name='deviceModel']").val(obj[0].deviceModel);

$("input[name='devicePrice']").val(obj[0].devicePrice);

$("input[name='assetCode']").val(obj[0].assetCode);

$("input[name='period']").val(obj[0].period);

var str="";

$.each(obj,function (i) {

str+="

";

str+="

"+obj[i].repairRecord+">";

str+="

";

})

},

error:function () {

alert("error");

}

});

}

function GetQueryString(name) {

var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");

var r = window.location.search.substr(1).match(reg);

if (r != null) return decodeURI(r[2]); return null;

}

ssm拼接html,SSM前后端分离 ssm+html+js(ajax) 这种controll层的返回值是结合或者网址...相关推荐

  1. 基于SSM+SpringBoot+MySQL+Vue前后端分离的博客论坛系统

    项目运行截图 系统首页 技术描述 开发工具: idea/eclipse 数据库: mysql Jar包仓库: Maven 前段框架: vue/ElementUI/echart 后端框架: spring ...

  2. 基于SSM+SpringBoot+Vue+ElementUI前后端分离的校园岗位招聘就业管理系统

    运行视频 基于SSM+SpringBoot+Vue+ElementUI前后端分离的校园岗位招聘就业管理系统 项目运行截图 学生管理 添加学生 学生信息 教师管理 教师信息 实习基地 公告信息 公司管理 ...

  3. 一个Java程序猿眼中的前后端分离以及Vue.js入门

    原文:https://mp.weixin.qq.com/s/HWRYAR16vLE1XFep6_i1tA 松哥的书里边,其实有涉及到 Vue,但是并没有详细说过,原因很简单,Vue 的资料都是中文的, ...

  4. SSM框架中的前后端分离

    认识前后端分离 在传统的web应用开发中,大多数的程序员会将浏览器作为前后端的分界线.将浏览器中为用户进行页面展示的部分称之为前端,而将运行在服务器,为前端提供业务逻辑和数据准备的所有代码统称为后端. ...

  5. 【最新】SSM框架中的前后端分离

    文章目录 1.认识前后端分离 2.分离的四个好处 3.利用Swagger UI来规范书写API文档 1.认识前后端分离 在传统的web应用开发中,大多数的程序员会将浏览器作为前后端的分界线.将浏览器中 ...

  6. 【飞机票售票系统】山东大学大二暑期数据库课程设计项目SSM+VUE2前后端分离(含源码)

    一.系统概述 二.需求分析 2.1 系统功能分析 2.2 系统数据分析 2.3 系统非功能分析 三.系统设计 3.1 应用程序设计 3.2 数据库设计 3.2.1 概念设计 3.2.2 逻辑设计 四. ...

  7. 前后端分离时代,Java 程序员的变与不变!

    事情的起因是这样的,有个星球的小伙伴向邀请松哥在知乎上回答一个问题,原题是: 前后端分离的时代,Java后台程序员的技术建议? 松哥认真看了下这个问题,感觉对于初次接触前后端分离的小伙伴来说,可能都会 ...

  8. 使用Restful、Guns、SpringBoot实现前后端分离

    2019独角兽企业重金招聘Python工程师标准>>> #首先重新了解一下Restful REST 是面向资源的,强调描述应用程序的事物和名词. 原则条件: REST 指的是一组架构 ...

  9. Atitit 提升效率 界面gui方面的前后端分离与cbb体系建设 规范与推荐标准

    Atitit 提升效率 界面gui方面的前后端分离与cbb体系建设 规范与推荐标准 1. 界面gui方面的前后端分离重大意义1 2. 业务逻辑也适当的迁移js化1 3. 常用分离方法2 3.1. 页面 ...

最新文章

  1. 鸿蒙系统啥时候发布新手机,鸿蒙系统新手机面世还有多远?明年3月发布的华为P40可能搭载...
  2. log_softmax与softmax区别
  3. 采购订单的审批状态异常的处理,审批状态为:预审批或是处理中的单据
  4. application/x-www-form-urlencoded与application/json区别以及遇到的坑
  5. HTTP、HTTPS、SSL总结
  6. 使用FTP下载文件connect.retrieveFileStream(filename) 获取不到InputStream流,返回null的问题
  7. PyTorch 1.4 中文文档校对活动正式启动 | ApacheCN
  8. 回答问题人工智能源码_回答21个最受欢迎的人工智能问题
  9. 推荐一个非常好用的进程管理器
  10. 银行核心系统是什么?
  11. 车辆运动学和动力学模型
  12. 数据库简单查询——查询的条件
  13. coreldraw x7如何禁网_出现问题如何修改和修复安装coreldraw x7
  14. C++: STL: atomic
  15. web第六课:div标签和span标签
  16. magento添加sku_快速提示:如何将优惠券添加到Magento电子商务商店
  17. SISR深度学习主要方法简述
  18. Enable tracemalloc to get the object allocation traceback 错误
  19. PCB阻焊油墨知识汇总
  20. 常用抓包工具,手机调试工具大合集

热门文章

  1. 查询条件中含有加号_excel中最全的多条件查询方法都在这里了
  2. python常用编译器和解释器的区别_Python常用编译器原理及特点解析
  3. python怎么筛选excel数据_PythonEXCEL读取-保存-矩阵合并-条件筛选
  4. 怎样能用计算机打出表白数字,怎么用数字表白?盘点数字表白暗语
  5. webpack 多页面 html,webpack打包多页应用,如何处理不同html页面(通过a标签)之间的跳转?...
  6. b+树时间复杂度_阿里面试,问了B+树,这个回答让我通过了
  7. centeros7 mysql,center os 7 Mysql 安装
  8. hashmap原理_想要彻底搞懂HashMap?你得恶补下HashMap原理
  9. 服务器保存excel文件慢,从使用IE的服务器缓慢地保存Excel文件
  10. linux+nm+内容详解,【Linux】nm命令中符号类型详解