spring boot一个简单用户管理DEMO
概述
该Demo旨在部署一个简单spring boot工程,包含数据编辑和查看功能
POM配置
<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>com.roncoo.education</groupId>
<artifactId>spring-boot-demo-15-1</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging> <name>spring-boot-demo-15-1</name>
<description>Demo project for Spring Boot</description> <parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.0.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties> <dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
<dependency>
<groupId>org.webjars</groupId>
<artifactId>jquery</artifactId>
<version>2.1.4</version>
</dependency> <!-- 数据库 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency> <dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>42.1.1</version>
</dependency> <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies> <build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build> </project>
属性配置
server.port=8080 spring.datasource.url=jdbc:postgresql://127.0.0.1:5432/postgis_24_sample?currentSchema=lilei_1
spring.datasource.username=postgres
spring.datasource.password=lilei
spring.datasource.driver-class-name=org.postgresql.Driver spring.jpa.hibernate.ddl-auto= update spring.jpa.show-sql=true
工程结构图

核心代码
dao层
package com.lilei.spring_boot_db.boot.dao;
import java.util.List;
import com.lilei.spring_boot_db.boot.bean.User;
public interface UserDao {
public User getUser(int id);
public int updateUser(User u);
public int insertUser(User u);
public int deleteUser(int id);
public List<User> queryUser(int pageSize,int pageNo);
}
dao实现层
package com.lilei.spring_boot_db.boot.dao.impl; import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository; import com.lilei.spring_boot_db.boot.bean.User;
import com.lilei.spring_boot_db.boot.dao.UserDao;
@Repository
public class UserDaoImpl implements UserDao { @Autowired
protected JdbcTemplate jdbc; public User getUser(int id) { String sql = "select name,create_date from user where id=?"; List<Map<String,Object>> list = jdbc.queryForList(sql, id); if (list.size()>0){
String name = list.get(0).get("name").toString();
Date createDate = (Date) list.get(0).get("create_date");
User u = new User(id,name);
u.setCreateTime(createDate);
return u;
} return null;
} public int updateUser(User u) { String sql = "update lilei_1.user set name=?,create_date=? where id=?"; int result = jdbc.update(sql, u.getName(),u.getCreateTime(),u.getId()); return result;
} public int insertUser(User u) {
String sql = "insert into lilei_1.user(id,name,create_date) values (?,?,?)"; int result = jdbc.update(sql, u.getId(),u.getName(),u.getCreateTime()); return result;
} public int deleteUser(int id) { String sql = "delete from lilei_1.user where id=?"; int result = jdbc.update(sql, id); return result; } public List<User> queryUser(int pageSize, int pageNo) { String sql = "select id,name,create_date from lilei_1.user limit ? offset ?"; List<Map<String,Object>> list = jdbc.queryForList(sql, pageSize,((pageNo-1) * pageSize)); List<User> us = new ArrayList<User>(); for(Map<String,Object> m:list){
int id = Integer.parseInt(m.get("id").toString());
String name = m.get("name").toString();
Date createDate = (Date) m.get("create_date");
User u = new User(id,name);
u.setCreateTime(createDate);
us.add(u);
} return us;
} }
控制器
package com.lilei.spring_boot_db.boot.controller; import java.util.Date;
import java.util.List; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import com.lilei.spring_boot_db.boot.bean.User;
import com.lilei.spring_boot_db.boot.dao.UserDao; @RestController
@RequestMapping("/user")
public class UserService { @Autowired
protected UserDao userDao; @RequestMapping("insert")
public String insertUser(String name, int id) { User u = new User(id, name); userDao.insertUser(u); return "success";
} @RequestMapping("delete")
public String deleteUser(int id) {
userDao.deleteUser(id);
return "success";
} @RequestMapping("update")
public String updateUser(String name,int id) {
User u = new User(id,name);
u.setCreateTime(new Date());
userDao.updateUser(u);
return "success";
} @RequestMapping("query")
public List<User> query(int page_size, int page_no) {
return userDao.queryUser(page_size, page_no);
}
}
spring boot一个简单用户管理DEMO的更多相关文章
- EasyUI+MVC+EF简单用户管理Demo(问题及解决)
写在前面 iframe-src EntityFramework版本 connectionStrings View.Action.页面跳转 EasyUI中DataGrid绑定 新增.修改和删除数据 效果 ...
- Spring Boot超详细用户管理项目(零)——开发前准备
开始前的软件准备:(编写中:未完成) 使用软件介绍: Java版本:Java SE 11(LTS) 开发工具:IDEA(2020.3版本) Linux系统: 数据库: Java 版本:Java SE ...
- Spring Boot项目简单上手+swagger配置+项目发布(可能是史上最详细的)
Spring Boot项目简单上手+swagger配置 1.项目实践 项目结构图 项目整体分为四部分:1.source code 2.sql-mapper 3.application.properti ...
- vue入门:用户管理demo
该demo纯前端实现 使用到vue技术点: 1.在该demo中使用到的vue指令:{{}}. v-if. v-model. @click v-for 2.在该demo中使用到的事件修饰符: .prev ...
- 基于vue.js的简单用户管理
功能描述:添加.修改.搜索过滤 效果图: <!DOCTYPE html> <html lang="en"> <head> <title&g ...
- C#中缓存的使用 ajax请求基于restFul的WebApi(post、get、delete、put) 让 .NET 更方便的导入导出 Excel .net core api +swagger(一个简单的入门demo 使用codefirst+mysql) C# 位运算详解 c# 交错数组 c# 数组协变 C# 添加Excel表单控件(Form Controls) C#串口通信程序
C#中缓存的使用 缓存的概念及优缺点在这里就不多做介绍,主要介绍一下使用的方法. 1.在ASP.NET中页面缓存的使用方法简单,只需要在aspx页的顶部加上一句声明即可: <%@ Outp ...
- Spring boot 注解简单备忘
Spring boot 注解简单备忘 1.定义注解 package com.space.aspect.anno;import java.lang.annotation.*; /** * 定义系统日志注 ...
- Spring Boot Mybatis简单使用
Spring Boot Mybatis简单使用 步骤说明 build.gradle:依赖添加 application.properties:配置添加 代码编写 测试 build.gradle:依赖添加 ...
- Spring Boot超简单的测试类demo
1 概述 Spring Boot结合Junit的简单测试类demo,流程是先引入依赖,接着编写测试类测试运行即可. 2 依赖 <dependency> <groupId>org ...
随机推荐
- JavaWeb(三)JSP概述
一.JSP概述 1.1.JSP简介 一种动态网页开发技术.它使用JSP标签在HTML网页中插入Java代码.标签通常以<%开头以%>结束.JSP是一种Java servlet,主要用于实现 ...
- sql sever 基础知识及详细笔记
第六章:程序数据集散地:数据库 6.1:当今最常用的数据库 sql server:是微软公司的产品 oracle:是甲骨文公司的产品 DB2:数据核心又称DB2通用服务器 Mysql:是一种开发源代 ...
- Python系列之内置函数
内置函数 一.数学运算类: abs(a):求绝对值如果参数是个复数则返回复数的模. a = abs(-1) print(a) >>>1 compilex([real[, imag]] ...
- Oracle 定时查询数据插入新表中(job+存储过程)
create table EGMAS_COUNT_DATA(TIMES date not null, COUNT NUMBER(30) not null, SYSTEM_NAME VARC ...
- python重试(指数退避算法)
本文实现了一个重试的装饰器,并且使用了指数退避算法.指数退避算法实现还是很简单的.先上代码再详细解释. 1.指数退避算法 欠奉.http://hugnew.com/?p=814 2.重试装饰器retr ...
- Re-Order Buffer
Re-order Buffer(ROB)是处理器中非常重要的一个模块,它位于renamer与scheduler(RS)之间,并且也是execution unit(EU)的出口.ROB作为指令处理的后端 ...
- 奥利奥好吃吗?Android 8.0新特性适配测试报告来啦!
WeTest 导读 谷歌2017 I/O开发者大会上发布了Android 8.0的正式版, 其官方代号为Oreo(奥利奥).网上关于Android8.0新功能特性的介绍已铺天盖地,新功能特性会对程序应 ...
- win10 UWP Hmac
HMAC是密钥相关的哈希运算消息认证码,输入密钥和信息. 在uwp,Hmac在很多网络使用,我最近写qiniu SDK,把原来C#改为UWP,需要使用HMAC. 上传文件 <form metho ...
- win10 uwp 活动磁贴
本文翻译:https://mobileprogrammerblog.wordpress.com/2015/12/23/live-tiles-and-notifications-in-universal ...
- Python 3.6.3 官网 下载 安装 测试 入门教程 (windows)
1. 官网下载 Python 3.6.3 访问 Python 官网 https://www.python.org/ 点击 Downloads => Python 3.6.3 下载 Python ...