mirror of
https://github.com/qiurunze123/miaosha.git
synced 2023-11-19 22:41:03 +08:00
mybatis xml 写法解析
This commit is contained in:
parent
9c73ca56a5
commit
d053fbcf6c
|
@ -11,6 +11,7 @@
|
||||||
</annotationProcessing>
|
</annotationProcessing>
|
||||||
<bytecodeTargetLevel>
|
<bytecodeTargetLevel>
|
||||||
<module name="miaosha" target="1.6" />
|
<module name="miaosha" target="1.6" />
|
||||||
|
<module name="springcloud-server" target="1.8" />
|
||||||
</bytecodeTargetLevel>
|
</bytecodeTargetLevel>
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
|
@ -2,5 +2,6 @@
|
||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="Encoding">
|
<component name="Encoding">
|
||||||
<file url="file://$PROJECT_DIR$" charset="UTF-8" />
|
<file url="file://$PROJECT_DIR$" charset="UTF-8" />
|
||||||
|
<file url="file://$PROJECT_DIR$/springcloud-server" charset="UTF-8" />
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
1081
.idea/workspace.xml
1081
.idea/workspace.xml
File diff suppressed because it is too large
Load Diff
|
@ -122,3 +122,7 @@ redis的数量不是库存,他的作用仅仅只是为了阻挡多余的请求
|
||||||
注意:局部变量是同步或局部线程的一个好的替代,它总是能够保证线程安全。唯一可能限制你这样做的是你的应用设计约束<br>
|
注意:局部变量是同步或局部线程的一个好的替代,它总是能够保证线程安全。唯一可能限制你这样做的是你的应用设计约束<br>
|
||||||
|
|
||||||
所以设计threadlocal存储user不会对对象产生影响,每次进来一个请求都会产生自身的线程变量来存储
|
所以设计threadlocal存储user不会对对象产生影响,每次进来一个请求都会产生自身的线程变量来存储
|
||||||
|
|
||||||
|
### <font color=#0099ff size=3 >15.mybatis如何使用注解与xml配置?</font><br>
|
||||||
|
本文使用的是注解方法开发所以不做过多解释<br>
|
||||||
|
下面仔细讲解以下如何详细使用xml开发<br>
|
194
pom.xml
194
pom.xml
|
@ -1,111 +1,119 @@
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
<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">
|
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>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
<groupId>com.geekq</groupId>
|
<groupId>com.geekq</groupId>
|
||||||
<artifactId>miaosha</artifactId>
|
<artifactId>miaosha</artifactId>
|
||||||
<version>0.0.1-SNAPSHOT</version>
|
<version>0.0.1-SNAPSHOT</version>
|
||||||
<packaging>jar</packaging>
|
<packaging>jar</packaging>
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-parent</artifactId>
|
<artifactId>spring-boot-starter-parent</artifactId>
|
||||||
<version>1.5.8.RELEASE</version>
|
<version>1.5.8.RELEASE</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<name>miaosha</name>
|
<name>miaosha</name>
|
||||||
<url>http://maven.apache.org</url>
|
<url>http://maven.apache.org</url>
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-web</artifactId>
|
<artifactId>spring-boot-starter-web</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.google.guava</groupId>
|
<groupId>com.google.guava</groupId>
|
||||||
<artifactId>guava</artifactId>
|
<artifactId>guava</artifactId>
|
||||||
<version>18.0</version>
|
<version>18.0</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-thymeleaf</artifactId>
|
<artifactId>spring-boot-starter-thymeleaf</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.mybatis.spring.boot</groupId>
|
<groupId>org.mybatis.spring.boot</groupId>
|
||||||
<artifactId>mybatis-spring-boot-starter</artifactId>
|
<artifactId>mybatis-spring-boot-starter</artifactId>
|
||||||
<version>1.3.1</version>
|
<version>1.3.1</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>mysql</groupId>
|
<groupId>mysql</groupId>
|
||||||
<artifactId>mysql-connector-java</artifactId>
|
<artifactId>mysql-connector-java</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.alibaba</groupId>
|
<groupId>com.alibaba</groupId>
|
||||||
<artifactId>druid</artifactId>
|
<artifactId>druid</artifactId>
|
||||||
<version>1.0.5</version>
|
<version>1.0.5</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>redis.clients</groupId>
|
<groupId>redis.clients</groupId>
|
||||||
<artifactId>jedis</artifactId>
|
<artifactId>jedis</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.alibaba</groupId>
|
<groupId>com.alibaba</groupId>
|
||||||
<artifactId>fastjson</artifactId>
|
<artifactId>fastjson</artifactId>
|
||||||
<version>1.2.38</version>
|
<version>1.2.38</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>commons-codec</groupId>
|
<groupId>commons-codec</groupId>
|
||||||
<artifactId>commons-codec</artifactId>
|
<artifactId>commons-codec</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.commons</groupId>
|
<groupId>org.apache.commons</groupId>
|
||||||
<artifactId>commons-lang3</artifactId>
|
<artifactId>commons-lang3</artifactId>
|
||||||
<version>3.6</version>
|
<version>3.6</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>commons-codec</groupId>
|
<groupId>commons-codec</groupId>
|
||||||
<artifactId>commons-codec</artifactId>
|
<artifactId>commons-codec</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.commons</groupId>
|
<groupId>org.apache.commons</groupId>
|
||||||
<artifactId>commons-lang3</artifactId>
|
<artifactId>commons-lang3</artifactId>
|
||||||
<version>3.6</version>
|
<version>3.6</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-validation</artifactId>
|
<artifactId>spring-boot-starter-validation</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-amqp</artifactId>
|
<artifactId>spring-boot-starter-amqp</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-amqp</artifactId>
|
<artifactId>spring-boot-starter-amqp</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
</dependencies>
|
<build>
|
||||||
|
<finalName>${project.artifactId}</finalName>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.springframework.boot</groupId>
|
||||||
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
<resources>
|
||||||
|
<resource>
|
||||||
|
<directory>src/main/java</directory>
|
||||||
|
<includes>
|
||||||
|
<include>**/*.xml</include>
|
||||||
|
</includes>
|
||||||
|
</resource>
|
||||||
|
</resources>
|
||||||
|
</build>
|
||||||
|
|
||||||
<build>
|
|
||||||
<finalName>${project.artifactId}</finalName>
|
|
||||||
<plugins>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
||||||
</plugin>
|
|
||||||
</plugins>
|
|
||||||
</build>
|
|
||||||
</project>
|
</project>
|
||||||
|
|
|
@ -1,15 +1,30 @@
|
||||||
package com.geekq.miaosha;
|
package com.geekq.miaosha;
|
||||||
|
|
||||||
|
import com.geekq.miaosha.domain.MiaoshaUser;
|
||||||
|
import org.apache.ibatis.io.Resources;
|
||||||
|
import org.apache.ibatis.session.SqlSession;
|
||||||
|
import org.apache.ibatis.session.SqlSessionFactory;
|
||||||
|
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.Reader;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* mybatis xml 写法的配置测试类
|
||||||
|
*/
|
||||||
public class Test {
|
public class Test {
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) throws IOException {
|
||||||
DemoTask demoTask = new DemoTask();
|
|
||||||
DemoTask demoTask1 = new DemoTask();
|
//读取配置文件
|
||||||
DemoTask demoTask2 = new DemoTask();
|
Reader reader = Resources.getResourceAsReader("config.xml");
|
||||||
Thread t = new Thread(demoTask);
|
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
|
||||||
t.start();
|
|
||||||
new Thread(demoTask).start();
|
|
||||||
new Thread(demoTask2).start();
|
|
||||||
|
|
||||||
|
|
||||||
|
SqlSession session = sessionFactory.openSession();
|
||||||
|
|
||||||
|
String statement = "com.geekq.miaosha.dao.UserMapper.getMiaoShaUserById" ;
|
||||||
|
MiaoshaUser user = session.selectOne(statement,"18612766134");
|
||||||
|
|
||||||
|
System.out.println(user.toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
27
src/main/java/com/geekq/miaosha/common/ResponseCode.java
Normal file
27
src/main/java/com/geekq/miaosha/common/ResponseCode.java
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
package com.geekq.miaosha.common;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 响应类
|
||||||
|
*/
|
||||||
|
public enum ResponseCode {
|
||||||
|
SUCCESS(0, "SUCCESS"),
|
||||||
|
ERROR(1, "ERROR"),
|
||||||
|
NEED_LOGIN(10, "NEED_LOGIN"),
|
||||||
|
ILLEGAL_ARGUMENT(2, "ILLEGAL_ARGUMENT");
|
||||||
|
|
||||||
|
private final int code;
|
||||||
|
private final String desc;
|
||||||
|
|
||||||
|
private ResponseCode(int code, String desc) {
|
||||||
|
this.code = code;
|
||||||
|
this.desc = desc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getCode() {
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDesc() {
|
||||||
|
return desc;
|
||||||
|
}
|
||||||
|
}
|
78
src/main/java/com/geekq/miaosha/common/ServerResponse.java
Normal file
78
src/main/java/com/geekq/miaosha/common/ServerResponse.java
Normal file
|
@ -0,0 +1,78 @@
|
||||||
|
package com.geekq.miaosha.common;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||||
|
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
|
||||||
|
//保证序列化的时候 不会有空
|
||||||
|
public class ServerResponse<T> implements Serializable {
|
||||||
|
|
||||||
|
private int status ;
|
||||||
|
private String msg ;
|
||||||
|
private T data ;
|
||||||
|
private ServerResponse( int status ){
|
||||||
|
this.status =status;
|
||||||
|
}
|
||||||
|
private ServerResponse( int status ,T data){
|
||||||
|
this.status =status;
|
||||||
|
this.data = data;
|
||||||
|
}
|
||||||
|
private ServerResponse( int status ,String msg ,T data){
|
||||||
|
this.status =status;
|
||||||
|
this.msg = msg ;
|
||||||
|
this.data = data;
|
||||||
|
}
|
||||||
|
|
||||||
|
private ServerResponse( int status ,String msg ){
|
||||||
|
this.status =status;
|
||||||
|
this.msg = msg ;
|
||||||
|
}
|
||||||
|
|
||||||
|
@JsonIgnore
|
||||||
|
public boolean isSuccess(){
|
||||||
|
return this.status == ResponseCode.SUCCESS.getCode();
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getStatus() {
|
||||||
|
return status;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getMsg() {
|
||||||
|
return msg;
|
||||||
|
}
|
||||||
|
|
||||||
|
public T getData() {
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T> ServerResponse<T> createBySuccess(){
|
||||||
|
return new ServerResponse<T>(ResponseCode.SUCCESS.getCode());
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T> ServerResponse<T> createBySuccessMessage(String msg){
|
||||||
|
return new ServerResponse<T>(ResponseCode.SUCCESS.getCode(),msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T> ServerResponse<T> createBySuccess(T data){
|
||||||
|
return new ServerResponse<T>(ResponseCode.SUCCESS.getCode(),data);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T> ServerResponse<T> createBySuccess(String msg,T data){
|
||||||
|
return new ServerResponse<T>(ResponseCode.SUCCESS.getCode(),msg,data);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T> ServerResponse<T> createByError(){
|
||||||
|
return new ServerResponse<T>(ResponseCode.ERROR.getCode(),ResponseCode.ERROR.getDesc());
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T> ServerResponse<T> createByErrorMessage(String errorMsg){
|
||||||
|
return new ServerResponse<T>(ResponseCode.ERROR.getCode(),errorMsg);
|
||||||
|
}
|
||||||
|
public static <T> ServerResponse<T> createByErrorCodeMessage(int errorCode , String errorMsg){
|
||||||
|
return new ServerResponse<T>(errorCode,errorMsg);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -1,14 +1,17 @@
|
||||||
package com.geekq.miaosha.controller;
|
package com.geekq.miaosha.controller;
|
||||||
|
|
||||||
import com.geekq.miaosha.result.CodeMsg;
|
import com.geekq.miaosha.dao.UserMapper;
|
||||||
|
import com.geekq.miaosha.domain.MiaoshaUser;
|
||||||
import com.geekq.miaosha.result.Result;
|
import com.geekq.miaosha.result.Result;
|
||||||
import com.geekq.miaosha.service.MiaoShaUserService;
|
import com.geekq.miaosha.service.MiaoShaUserService;
|
||||||
import com.geekq.miaosha.vo.LoginVo;
|
import com.geekq.miaosha.vo.LoginVo;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMethod;
|
||||||
import org.springframework.web.bind.annotation.ResponseBody;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
@ -18,24 +21,54 @@ import javax.validation.Valid;
|
||||||
@RequestMapping("/login")
|
@RequestMapping("/login")
|
||||||
public class LoginController {
|
public class LoginController {
|
||||||
|
|
||||||
private static Logger log = LoggerFactory.getLogger(LoginController.class) ;
|
private static Logger log = LoggerFactory.getLogger(LoginController.class);
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private MiaoShaUserService userService ;
|
private MiaoShaUserService userService;
|
||||||
|
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private UserMapper userMapper;
|
||||||
|
|
||||||
@RequestMapping("/to_login")
|
@RequestMapping("/to_login")
|
||||||
public String tologin(LoginVo loginVo ){
|
public String tologin(LoginVo loginVo) {
|
||||||
log.info(loginVo.toString());
|
log.info(loginVo.toString());
|
||||||
return "login" ;
|
return "login";
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping("/do_login")
|
@RequestMapping("/do_login")
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
public Result<Boolean> dologin(HttpServletResponse response , @Valid LoginVo loginVo ){
|
public Result<Boolean> dologin(HttpServletResponse response, @Valid LoginVo loginVo) {
|
||||||
log.info(loginVo.toString());
|
log.info(loginVo.toString());
|
||||||
userService.login(response , loginVo);
|
userService.login(response, loginVo);
|
||||||
return Result.success(true);
|
return Result.success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@RequestMapping(value = "/register", method = RequestMethod.POST)
|
||||||
|
public Result<String> register(MiaoshaUser user) {
|
||||||
|
return userService.insertMiaoShaUser(user);
|
||||||
|
}
|
||||||
|
|
||||||
|
@RequestMapping("/mybatis")
|
||||||
|
public void mybatisXml() {
|
||||||
|
//
|
||||||
|
int count = userMapper.getMiaoShaUserNum();
|
||||||
|
System.out.println(count);
|
||||||
|
MiaoshaUser user = userMapper.getMiaoShaUserById(Long.valueOf("18612766134"));
|
||||||
|
System.out.println(user);
|
||||||
|
//
|
||||||
|
// MiaoshaUser miaoshaUser =new MiaoshaUser();
|
||||||
|
// miaoshaUser.setId(Long.valueOf("1234569879"));
|
||||||
|
// miaoshaUser.setNickname("test");
|
||||||
|
// Long num = userMapper.insertMiaoShaUser(miaoshaUser);
|
||||||
|
|
||||||
|
MiaoshaUser upmiaoshaUser =new MiaoshaUser();
|
||||||
|
upmiaoshaUser.setId(Long.valueOf("1234569879"));
|
||||||
|
upmiaoshaUser.setNickname("test1");
|
||||||
|
userMapper.updateMiaoShaUser(upmiaoshaUser);
|
||||||
|
|
||||||
|
userMapper.deleteMiaoShaUser(Long.valueOf("1234569879"));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,24 @@
|
||||||
|
package com.geekq.miaosha.controller;
|
||||||
|
|
||||||
|
import org.springframework.stereotype.Controller;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMethod;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpSession;
|
||||||
|
|
||||||
|
@Controller
|
||||||
|
@RequestMapping("/user/")
|
||||||
|
public class UserController {
|
||||||
|
/**
|
||||||
|
* 用户登录
|
||||||
|
* @param username
|
||||||
|
* @param password
|
||||||
|
* @param session
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@RequestMapping(value = "/login",method = RequestMethod.POST)
|
||||||
|
public Object login(String username , String password , HttpSession session){
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,10 +1,7 @@
|
||||||
package com.geekq.miaosha.dao;
|
package com.geekq.miaosha.dao;
|
||||||
|
|
||||||
import com.geekq.miaosha.domain.MiaoshaUser;
|
import com.geekq.miaosha.domain.MiaoshaUser;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.*;
|
||||||
import org.apache.ibatis.annotations.Param;
|
|
||||||
import org.apache.ibatis.annotations.Select;
|
|
||||||
import org.apache.ibatis.annotations.Update;
|
|
||||||
|
|
||||||
@Mapper
|
@Mapper
|
||||||
public interface MiaoShaUserDao {
|
public interface MiaoShaUserDao {
|
||||||
|
@ -15,4 +12,9 @@ public interface MiaoShaUserDao {
|
||||||
|
|
||||||
@Update("update miaosha_user set password = #{password} where id = #{id}")
|
@Update("update miaosha_user set password = #{password} where id = #{id}")
|
||||||
public void update(MiaoshaUser toBeUpdate);
|
public void update(MiaoshaUser toBeUpdate);
|
||||||
|
|
||||||
|
|
||||||
|
@Insert("insert into miaosha_user (id , nickname ,password , salt ,head,register_date,last_login_date)value (#{id},#{nickname},#{password},#{salt},#{nickname},#{head},#{register_date},#{last_login_date}) ")
|
||||||
|
public long insertMiaoShaUser(MiaoshaUser miaoshaUser);
|
||||||
|
|
||||||
}
|
}
|
|
@ -1,13 +0,0 @@
|
||||||
package com.geekq.miaosha.dao;
|
|
||||||
|
|
||||||
import com.geekq.miaosha.domain.MiaoshaUser;
|
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
|
||||||
import org.apache.ibatis.annotations.Param;
|
|
||||||
import org.apache.ibatis.annotations.Select;
|
|
||||||
|
|
||||||
@Mapper
|
|
||||||
public interface MiaoshaUserDao {
|
|
||||||
|
|
||||||
@Select("select * from miaosha_user where id = #{id}")
|
|
||||||
public MiaoshaUser getById(@Param("id") long id);
|
|
||||||
}
|
|
30
src/main/java/com/geekq/miaosha/dao/UserMapper.java
Normal file
30
src/main/java/com/geekq/miaosha/dao/UserMapper.java
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
package com.geekq.miaosha.dao;
|
||||||
|
|
||||||
|
import com.geekq.miaosha.domain.MiaoshaUser;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* mybatis xml 写法
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface UserMapper {
|
||||||
|
int countbyMenuId();
|
||||||
|
MiaoshaUser getMiaoShaUserById(Long phoneId);
|
||||||
|
//秒杀对象获取 mybatis的#与$的区别
|
||||||
|
List<MiaoshaUser> queryMiaoShaUserOrderByColumn(String column);
|
||||||
|
|
||||||
|
|
||||||
|
//查询总条数
|
||||||
|
public int getMiaoShaUserNum();
|
||||||
|
|
||||||
|
public Long insertMiaoShaUser(MiaoshaUser user);
|
||||||
|
|
||||||
|
//更改表数据
|
||||||
|
void updateMiaoShaUser(MiaoshaUser user) ;
|
||||||
|
|
||||||
|
//删除表数据
|
||||||
|
|
||||||
|
void deleteMiaoShaUser(long id );
|
||||||
|
}
|
|
@ -59,4 +59,18 @@ public class MiaoshaUser {
|
||||||
public void setLoginCount(Integer loginCount) {
|
public void setLoginCount(Integer loginCount) {
|
||||||
this.loginCount = loginCount;
|
this.loginCount = loginCount;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "MiaoshaUser{" +
|
||||||
|
"id=" + id +
|
||||||
|
", nickname='" + nickname + '\'' +
|
||||||
|
", password='" + password + '\'' +
|
||||||
|
", salt='" + salt + '\'' +
|
||||||
|
", head='" + head + '\'' +
|
||||||
|
", registerDate=" + registerDate +
|
||||||
|
", lastLoginDate=" + lastLoginDate +
|
||||||
|
", loginCount=" + loginCount +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,6 +7,11 @@ public class CodeMsg {
|
||||||
|
|
||||||
//通用的错误码
|
//通用的错误码
|
||||||
public static CodeMsg SUCCESS = new CodeMsg(0, "success");
|
public static CodeMsg SUCCESS = new CodeMsg(0, "success");
|
||||||
|
|
||||||
|
public static CodeMsg SUCCESS_RESIGETER = new CodeMsg(200,"注册成功!");
|
||||||
|
|
||||||
|
public static CodeMsg RESIGETER_FAIL = new CodeMsg(300,"注册失败!");
|
||||||
|
|
||||||
public static CodeMsg SERVER_ERROR = new CodeMsg(500100, "服务端异常");
|
public static CodeMsg SERVER_ERROR = new CodeMsg(500100, "服务端异常");
|
||||||
public static CodeMsg BIND_ERROR = new CodeMsg(500101, "参数校验异常:%s");
|
public static CodeMsg BIND_ERROR = new CodeMsg(500101, "参数校验异常:%s");
|
||||||
public static CodeMsg REQUEST_ILLEGAL = new CodeMsg(500102, "请求非法");
|
public static CodeMsg REQUEST_ILLEGAL = new CodeMsg(500102, "请求非法");
|
||||||
|
|
|
@ -1,45 +1,66 @@
|
||||||
package com.geekq.miaosha.result;
|
package com.geekq.miaosha.result;
|
||||||
|
|
||||||
public class Result<T> {
|
public class Result<T> {
|
||||||
private int code ;
|
private int code;
|
||||||
private String msg ;
|
private String msg;
|
||||||
private T data ;
|
private T data;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 成功时候的调用
|
* 成功时候的调用
|
||||||
|
*
|
||||||
* @param data
|
* @param data
|
||||||
* @param <T>
|
* @param <T>
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public static <T> Result<T> success( T data ){
|
public static <T> Result<T> success(T data) {
|
||||||
return new Result<T>(data) ;
|
return new Result<T>(data);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 注册时候调用
|
||||||
|
*
|
||||||
|
* @param msg
|
||||||
|
* @param data
|
||||||
|
* @param <T>
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public static <T> Result<T> success(CodeMsg msg) {
|
||||||
|
|
||||||
|
return new Result<T>(CodeMsg.SUCCESS_RESIGETER);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 失败的时候调用
|
* 失败的时候调用
|
||||||
|
*
|
||||||
* @param cm
|
* @param cm
|
||||||
* @param <T>
|
* @param <T>
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public static <T> Result<T> error(CodeMsg cm){
|
public static <T> Result<T> error(CodeMsg cm) {
|
||||||
return new Result<T>(cm) ;
|
return new Result<T>(cm);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// public Result(CodeMsg msg, T data) {
|
||||||
|
// this.code = msg.getCode();
|
||||||
|
// this.msg = msg.getMsg();
|
||||||
|
// this.data = data;
|
||||||
|
// }
|
||||||
|
|
||||||
private Result(CodeMsg cm) {
|
private Result(CodeMsg cm) {
|
||||||
if(cm ==null){
|
if (cm == null) {
|
||||||
return ;
|
return;
|
||||||
}
|
}
|
||||||
this.code = cm.getCode() ;
|
this.code = cm.getCode();
|
||||||
this.msg = cm.getMsg() ;
|
this.msg = cm.getMsg();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private Result(T data) {
|
private Result(T data) {
|
||||||
this.code = 0 ;
|
this.code = 0;
|
||||||
this.msg = "success" ;
|
this.msg = "success";
|
||||||
this.data = data ;
|
this.data = data;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getCode() {
|
public int getCode() {
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
package com.geekq.miaosha.service;
|
||||||
|
|
||||||
|
public interface IUserService {
|
||||||
|
|
||||||
|
Object login(String username , String password) ;
|
||||||
|
|
||||||
|
}
|
|
@ -7,8 +7,10 @@ import com.geekq.miaosha.exception.GlobleException;
|
||||||
import com.geekq.miaosha.redis.MiaoShaUserKey;
|
import com.geekq.miaosha.redis.MiaoShaUserKey;
|
||||||
import com.geekq.miaosha.redis.RedisService;
|
import com.geekq.miaosha.redis.RedisService;
|
||||||
import com.geekq.miaosha.result.CodeMsg;
|
import com.geekq.miaosha.result.CodeMsg;
|
||||||
|
import com.geekq.miaosha.result.Result;
|
||||||
import com.geekq.miaosha.utils.UUIDUtil;
|
import com.geekq.miaosha.utils.UUIDUtil;
|
||||||
import com.geekq.miaosha.vo.LoginVo;
|
import com.geekq.miaosha.vo.LoginVo;
|
||||||
|
import com.sun.org.apache.bcel.internal.classfile.Code;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
@ -74,6 +76,17 @@ public class MiaoShaUserService {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Result<String> insertMiaoShaUser(MiaoshaUser miaoshaUser){
|
||||||
|
|
||||||
|
long resultRegister = miaoShaUserDao.insertMiaoShaUser(miaoshaUser);
|
||||||
|
|
||||||
|
if(resultRegister == 0){
|
||||||
|
throw new GlobleException(CodeMsg.RESIGETER_FAIL);
|
||||||
|
}
|
||||||
|
|
||||||
|
return Result.success(CodeMsg.SUCCESS_RESIGETER);
|
||||||
|
}
|
||||||
|
|
||||||
public boolean login(HttpServletResponse response , LoginVo loginVo) {
|
public boolean login(HttpServletResponse response , LoginVo loginVo) {
|
||||||
if(loginVo ==null){
|
if(loginVo ==null){
|
||||||
throw new GlobleException(CodeMsg.SERVER_ERROR);
|
throw new GlobleException(CodeMsg.SERVER_ERROR);
|
||||||
|
|
|
@ -8,10 +8,13 @@ spring.thymeleaf.encoding=UTF-8
|
||||||
spring.thymeleaf.mode=HTML5
|
spring.thymeleaf.mode=HTML5
|
||||||
|
|
||||||
#mybatis
|
#mybatis
|
||||||
mybatis.type-aliases-package=com.imooc.miaosha.domain
|
mybatis.type-aliases-package=com.geekq.miaosha.domain
|
||||||
#开启驼峰转换
|
#开启驼峰转换
|
||||||
mybatis.configuration.map-underscore-to-camel-case=true
|
mybatis.configuration.map-underscore-to-camel-case=true
|
||||||
mybatis.mapperLocations = classpath:com/imooc/miaosha/dao/*.xml
|
#mybatis.mapperLocations = classpath:com/geekq/miaosha/dao/*.xml
|
||||||
|
mybatis.mapperLocations=classpath:mybatis/mapper/*.xml
|
||||||
|
#add mybatis
|
||||||
|
mybatis.config-locations=classpath:mybatis/config.xml
|
||||||
#datasource
|
#datasource
|
||||||
spring.datasource.url=jdbc:mysql://localhost:3306/miaosha?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false
|
spring.datasource.url=jdbc:mysql://localhost:3306/miaosha?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false
|
||||||
spring.datasource.username=root
|
spring.datasource.username=root
|
||||||
|
|
11
src/main/resources/mybatis/config.xml
Normal file
11
src/main/resources/mybatis/config.xml
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
|
||||||
|
<configuration>
|
||||||
|
|
||||||
|
<typeAliases>
|
||||||
|
<typeAlias alias="miaoshauser1" type="com.geekq.miaosha.domain.MiaoshaUser"/>
|
||||||
|
</typeAliases>
|
||||||
|
<!-- <mappers>
|
||||||
|
<mapper resource="/mybatis/mapper/UserMapper.xml"></mapper>
|
||||||
|
</mappers>-->
|
||||||
|
</configuration>
|
62
src/main/resources/mybatis/mapper/UserMapper.xml
Normal file
62
src/main/resources/mybatis/mapper/UserMapper.xml
Normal file
|
@ -0,0 +1,62 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||||
|
|
||||||
|
<mapper namespace="com.geekq.miaosha.dao.UserMapper">
|
||||||
|
|
||||||
|
<!--结果集映射-->
|
||||||
|
<resultMap id="BaseResultMap" type="com.geekq.miaosha.domain.MiaoshaUser">
|
||||||
|
<id column="id" property="id" jdbcType="BIGINT"/>
|
||||||
|
<result column="nickname" property="nickname" jdbcType="VARCHAR"/>
|
||||||
|
<result column="salt" property="salt" jdbcType="VARCHAR"/>
|
||||||
|
<result column="head" property="head" jdbcType="VARCHAR"/>
|
||||||
|
<result column="register_date" property="registerDate" jdbcType="TIMESTAMP"/>
|
||||||
|
<result column="last_login_date" property="lastLoginDate" jdbcType="TIMESTAMP"/>
|
||||||
|
<result column="login_Count" property="loginCount" jdbcType="INTEGER"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<!--增加一条数据-->
|
||||||
|
|
||||||
|
<insert id="insertMiaoShaUser" parameterType="com.geekq.miaosha.domain.MiaoshaUser" keyProperty="id">
|
||||||
|
|
||||||
|
insert into miaosha_user (id, nickname, salt, register_date,last_login_date,login_Count ) values
|
||||||
|
(#{id,jdbcType=BIGINT},#{nickname,jdbcType=VARCHAR},
|
||||||
|
#{salt,jdbcType=VARCHAR},#{registerDate,jdbcType=DATE},#{lastLoginDate,jdbcType=DATE},
|
||||||
|
#{loginCount,jdbcType=INTEGER}
|
||||||
|
)
|
||||||
|
</insert>
|
||||||
|
|
||||||
|
<!--更新一条数据-->
|
||||||
|
|
||||||
|
<update id="updateMiaoShaUser" >
|
||||||
|
update miaosha_user set nickname = #{nickname},
|
||||||
|
login_Count = #{loginCount}
|
||||||
|
where id=#{id}
|
||||||
|
</update>
|
||||||
|
|
||||||
|
<!--删除一条数据-->
|
||||||
|
<delete id="deleteMiaoShaUser" parameterType="Long">
|
||||||
|
delete from miaosha_user
|
||||||
|
where id = #{id,jdbcType=BIGINT}
|
||||||
|
</delete>
|
||||||
|
|
||||||
|
|
||||||
|
<sql id="Base_Column_List"> id, nickname, salt, register_date,last_login_date,login_Count </sql>
|
||||||
|
|
||||||
|
<select id="getMiaoShaUserById" parameterType="LONG" resultType="miaoshauser">
|
||||||
|
SELECT
|
||||||
|
<include refid="Base_Column_List"/>
|
||||||
|
FROM miaosha_user WHERE id = #{id}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
<select id="getMiaoShaUserNum" resultType="int">
|
||||||
|
select count(*) from miaosha_user
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
<select id="countbyMenuId" parameterType="java.lang.Integer"
|
||||||
|
resultType="java.lang.Integer"> select count(*) from miaosha_user
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
</mapper>
|
|
@ -48,10 +48,10 @@
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-5">
|
<div class="col-md-5">
|
||||||
<button class="btn btn-primary btn-block" type="reset" onclick="reset()">重置</button>
|
<button class="btn btn-primary btn-block" type="reset" onclick="reset()">重置</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-5">
|
<div class="col-md-5">
|
||||||
<button class="btn btn-primary btn-block" type="submit" onclick="login()">登录</button>
|
<button class="btn btn-primary btn-block" type="submit" onclick="login()">登录</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -8,10 +8,13 @@ spring.thymeleaf.encoding=UTF-8
|
||||||
spring.thymeleaf.mode=HTML5
|
spring.thymeleaf.mode=HTML5
|
||||||
|
|
||||||
#mybatis
|
#mybatis
|
||||||
mybatis.type-aliases-package=com.imooc.miaosha.domain
|
mybatis.type-aliases-package=com.geekq.miaosha.domain
|
||||||
#开启驼峰转换
|
#开启驼峰转换
|
||||||
mybatis.configuration.map-underscore-to-camel-case=true
|
mybatis.configuration.map-underscore-to-camel-case=true
|
||||||
mybatis.mapperLocations = classpath:com/imooc/miaosha/dao/*.xml
|
#mybatis.mapperLocations = classpath:com/geekq/miaosha/dao/*.xml
|
||||||
|
mybatis.mapperLocations=classpath:mybatis/mapper/*.xml
|
||||||
|
#add mybatis
|
||||||
|
mybatis.config-locations=classpath:mybatis/config.xml
|
||||||
#datasource
|
#datasource
|
||||||
spring.datasource.url=jdbc:mysql://localhost:3306/miaosha?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false
|
spring.datasource.url=jdbc:mysql://localhost:3306/miaosha?useUnicode=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false
|
||||||
spring.datasource.username=root
|
spring.datasource.username=root
|
||||||
|
|
Binary file not shown.
BIN
target/classes/com/geekq/miaosha/common/ResponseCode.class
Normal file
BIN
target/classes/com/geekq/miaosha/common/ResponseCode.class
Normal file
Binary file not shown.
BIN
target/classes/com/geekq/miaosha/common/ServerResponse.class
Normal file
BIN
target/classes/com/geekq/miaosha/common/ServerResponse.class
Normal file
Binary file not shown.
Binary file not shown.
BIN
target/classes/com/geekq/miaosha/controller/UserController.class
Normal file
BIN
target/classes/com/geekq/miaosha/controller/UserController.class
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
target/classes/com/geekq/miaosha/dao/UserMapper.class
Normal file
BIN
target/classes/com/geekq/miaosha/dao/UserMapper.class
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
target/classes/com/geekq/miaosha/service/IUserService.class
Normal file
BIN
target/classes/com/geekq/miaosha/service/IUserService.class
Normal file
Binary file not shown.
Binary file not shown.
11
target/classes/mybatis/config.xml
Normal file
11
target/classes/mybatis/config.xml
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
|
||||||
|
<configuration>
|
||||||
|
|
||||||
|
<typeAliases>
|
||||||
|
<typeAlias alias="miaoshauser1" type="com.geekq.miaosha.domain.MiaoshaUser"/>
|
||||||
|
</typeAliases>
|
||||||
|
<!-- <mappers>
|
||||||
|
<mapper resource="/mybatis/mapper/UserMapper.xml"></mapper>
|
||||||
|
</mappers>-->
|
||||||
|
</configuration>
|
62
target/classes/mybatis/mapper/UserMapper.xml
Normal file
62
target/classes/mybatis/mapper/UserMapper.xml
Normal file
|
@ -0,0 +1,62 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||||
|
|
||||||
|
<mapper namespace="com.geekq.miaosha.dao.UserMapper">
|
||||||
|
|
||||||
|
<!--结果集映射-->
|
||||||
|
<resultMap id="BaseResultMap" type="com.geekq.miaosha.domain.MiaoshaUser">
|
||||||
|
<id column="id" property="id" jdbcType="BIGINT"/>
|
||||||
|
<result column="nickname" property="nickname" jdbcType="VARCHAR"/>
|
||||||
|
<result column="salt" property="salt" jdbcType="VARCHAR"/>
|
||||||
|
<result column="head" property="head" jdbcType="VARCHAR"/>
|
||||||
|
<result column="register_date" property="registerDate" jdbcType="TIMESTAMP"/>
|
||||||
|
<result column="last_login_date" property="lastLoginDate" jdbcType="TIMESTAMP"/>
|
||||||
|
<result column="login_Count" property="loginCount" jdbcType="INTEGER"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<!--增加一条数据-->
|
||||||
|
|
||||||
|
<insert id="insertMiaoShaUser" parameterType="com.geekq.miaosha.domain.MiaoshaUser" keyProperty="id">
|
||||||
|
|
||||||
|
insert into miaosha_user (id, nickname, salt, register_date,last_login_date,login_Count ) values
|
||||||
|
(#{id,jdbcType=BIGINT},#{nickname,jdbcType=VARCHAR},
|
||||||
|
#{salt,jdbcType=VARCHAR},#{registerDate,jdbcType=DATE},#{lastLoginDate,jdbcType=DATE},
|
||||||
|
#{loginCount,jdbcType=INTEGER}
|
||||||
|
)
|
||||||
|
</insert>
|
||||||
|
|
||||||
|
<!--更新一条数据-->
|
||||||
|
|
||||||
|
<update id="updateMiaoShaUser" >
|
||||||
|
update miaosha_user set nickname = #{nickname},
|
||||||
|
login_Count = #{loginCount}
|
||||||
|
where id=#{id}
|
||||||
|
</update>
|
||||||
|
|
||||||
|
<!--删除一条数据-->
|
||||||
|
<delete id="deleteMiaoShaUser" parameterType="Long">
|
||||||
|
delete from miaosha_user
|
||||||
|
where id = #{id,jdbcType=BIGINT}
|
||||||
|
</delete>
|
||||||
|
|
||||||
|
|
||||||
|
<sql id="Base_Column_List"> id, nickname, salt, register_date,last_login_date,login_Count </sql>
|
||||||
|
|
||||||
|
<select id="getMiaoShaUserById" parameterType="LONG" resultType="miaoshauser">
|
||||||
|
SELECT
|
||||||
|
<include refid="Base_Column_List"/>
|
||||||
|
FROM miaosha_user WHERE id = #{id}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
<select id="getMiaoShaUserNum" resultType="int">
|
||||||
|
select count(*) from miaosha_user
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
<select id="countbyMenuId" parameterType="java.lang.Integer"
|
||||||
|
resultType="java.lang.Integer"> select count(*) from miaosha_user
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
</mapper>
|
|
@ -48,10 +48,10 @@
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-5">
|
<div class="col-md-5">
|
||||||
<button class="btn btn-primary btn-block" type="reset" onclick="reset()">重置</button>
|
<button class="btn btn-primary btn-block" type="reset" onclick="reset()">重置</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-5">
|
<div class="col-md-5">
|
||||||
<button class="btn btn-primary btn-block" type="submit" onclick="login()">登录</button>
|
<button class="btn btn-primary btn-block" type="submit" onclick="login()">登录</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user