mirror of
https://e.coding.net/mcontext/mContext/sdu_server.git
synced 2024-09-18 02:24:54 +08:00
commit
This commit is contained in:
parent
fe1d0809ee
commit
02ed697b71
13
pom.xml
13
pom.xml
@ -66,6 +66,19 @@
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.auth0</groupId>
|
||||
<artifactId>java-jwt</artifactId>
|
||||
<version>3.4.0</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.tencentcloudapi</groupId>
|
||||
<artifactId>tencentcloud-sdk-java</artifactId>
|
||||
<!-- 请到https://search.maven.org/search?q=tencentcloud-sdk-java查询最新版本 -->
|
||||
<version>3.1.37</version>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
@ -4,10 +4,10 @@ import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
|
||||
@SpringBootApplication
|
||||
public class StuserverApplication {
|
||||
public class SduServerApplication {
|
||||
|
||||
public static void main(String[] args) {
|
||||
SpringApplication.run(StuserverApplication.class, args);
|
||||
SpringApplication.run(SduServerApplication.class, args);
|
||||
}
|
||||
|
||||
}
|
55
src/main/java/com/yuxihan/SendSms.java
Normal file
55
src/main/java/com/yuxihan/SendSms.java
Normal file
@ -0,0 +1,55 @@
|
||||
package com.yuxihan;
|
||||
|
||||
|
||||
import com.tencentcloudapi.common.Credential;
|
||||
import com.tencentcloudapi.common.profile.ClientProfile;
|
||||
import com.tencentcloudapi.common.profile.HttpProfile;
|
||||
import com.tencentcloudapi.common.exception.TencentCloudSDKException;
|
||||
|
||||
import com.tencentcloudapi.sms.v20190711.SmsClient;
|
||||
|
||||
import com.tencentcloudapi.sms.v20190711.models.SendSmsRequest;
|
||||
import com.tencentcloudapi.sms.v20190711.models.SendSmsResponse;
|
||||
|
||||
/**
|
||||
* 发送验证码
|
||||
*/
|
||||
public class SendSms {
|
||||
|
||||
public static final String SECRET_ID = "AKIDwfARTHDAE4e4GE7XrwnOltlPr54rJgjW";
|
||||
public static final String SECRET_KEY = "jGZfbJn34qQmuoTu75oNioeHfplSwCDy";
|
||||
|
||||
|
||||
public static void main(String[] args) {
|
||||
try {
|
||||
|
||||
Credential cred = new Credential(SECRET_ID, SECRET_KEY);
|
||||
|
||||
HttpProfile httpProfile = new HttpProfile();
|
||||
httpProfile.setEndpoint("sms.tencentcloudapi.com");
|
||||
|
||||
ClientProfile clientProfile = new ClientProfile();
|
||||
clientProfile.setHttpProfile(httpProfile);
|
||||
|
||||
SmsClient client = new SmsClient(cred, "ap-guangzhou-open", clientProfile);
|
||||
|
||||
/* String params = "{\"PhoneNumberSet\":[\"+8613262911437\"],\"TemplateID\":\"574746\",\"Sign\":\"yuxihan网\",\"TemplateParamSet\":[\"987654\",\"30\"],\"SmsSdkAppid\":\"1400349431\"}";
|
||||
SendSmsRequest req = SendSmsRequest.fromJsonString(params, SendSmsRequest.class);
|
||||
SendSmsResponse resp = client.SendSms(req);
|
||||
*/
|
||||
SendSmsRequest sendSmsRequest = new SendSmsRequest();
|
||||
sendSmsRequest.setTemplateID("574746");
|
||||
sendSmsRequest.setSign("yuxihan网");
|
||||
sendSmsRequest.setSmsSdkAppid("1400349431");
|
||||
sendSmsRequest.setPhoneNumberSet(new String[]{"+8613262911437"});
|
||||
sendSmsRequest.setTemplateParamSet(new String[]{"123456","31"});
|
||||
SendSmsResponse resp = client.SendSms(sendSmsRequest);
|
||||
|
||||
System.out.println(SendSmsRequest.toJsonString(resp));
|
||||
} catch (TencentCloudSDKException e) {
|
||||
System.out.println(e.toString());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
@ -2,11 +2,13 @@ package com.yuxihan.bean;
|
||||
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@Component
|
||||
public class ErrJson {
|
||||
private String errCode;
|
||||
private String errMsg;
|
||||
private String result;
|
||||
private Map<String,Object> result;
|
||||
|
||||
public String getErrCode() {
|
||||
return errCode;
|
||||
@ -24,11 +26,11 @@ public class ErrJson {
|
||||
this.errMsg = errMsg;
|
||||
}
|
||||
|
||||
public String getResult() {
|
||||
public Map<String, Object> getResult() {
|
||||
return result;
|
||||
}
|
||||
|
||||
public void setResult(String result) {
|
||||
public void setResult(Map<String, Object> result) {
|
||||
this.result = result;
|
||||
}
|
||||
}
|
||||
|
@ -12,6 +12,7 @@ public class User implements Serializable {
|
||||
private String password;
|
||||
private Date createdTime;
|
||||
private Date updatedTime;
|
||||
private String nickname;
|
||||
|
||||
public Integer getId() {
|
||||
return userId;
|
||||
@ -52,4 +53,12 @@ public class User implements Serializable {
|
||||
public void setUpdatedTime(Date updatedTime) {
|
||||
this.updatedTime = updatedTime;
|
||||
}
|
||||
|
||||
public String getNickname() {
|
||||
return nickname;
|
||||
}
|
||||
|
||||
public void setNickname(String nickname) {
|
||||
this.nickname = nickname;
|
||||
}
|
||||
}
|
||||
|
@ -15,7 +15,27 @@ import java.util.List;
|
||||
public class UserController {
|
||||
@Autowired
|
||||
private UserServies userServies;
|
||||
|
||||
@Autowired
|
||||
private ErrJson errJson;
|
||||
/**
|
||||
* 修改昵称
|
||||
* @param userName
|
||||
* @param nickname
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/updateName", produces = {"application/json; charset=UTF-8"}, method = RequestMethod.POST)
|
||||
public ErrJson updateName(@RequestParam(value = "userName") String userName, @RequestParam(value = "nickname") String nickname,@RequestParam(value = "token") String token){
|
||||
if (token.isEmpty()) {
|
||||
return errJson;
|
||||
}
|
||||
if (1 == userServies.getTokenStatus(userName)) {
|
||||
return errJson;
|
||||
}
|
||||
if (token.equals(userServies.getToken(userName))) {
|
||||
return userServies.updateName(userName,nickname);
|
||||
}
|
||||
return errJson;
|
||||
}
|
||||
/**
|
||||
* 登录
|
||||
*
|
||||
|
@ -19,14 +19,18 @@ public interface UserMapper {
|
||||
|
||||
String getPsd(User user);
|
||||
|
||||
int getUserId(User user);
|
||||
int getUserId(String userName);
|
||||
|
||||
void updateTokenStatus(Token token);
|
||||
|
||||
void insertToken(Token token);
|
||||
|
||||
String getToken(Token token);
|
||||
String getToken(Integer userId);
|
||||
|
||||
String getTokenStatus(Token token);
|
||||
int getTokenStatus(Integer userId);
|
||||
|
||||
User findUser(String userName);
|
||||
|
||||
void updateName(User user);
|
||||
}
|
||||
|
||||
|
@ -8,8 +8,20 @@ import java.util.List;
|
||||
|
||||
public interface UserServies {
|
||||
List<User> findAll();
|
||||
public ErrJson addUser(String userName, String password);
|
||||
public int isExistsUser(String userName);
|
||||
public String getPsd(String userName);
|
||||
public ErrJson login(String userName,String password);
|
||||
|
||||
ErrJson addUser(String userName, String password);
|
||||
|
||||
int isExistsUser(String userName);
|
||||
|
||||
String getPsd(String userName);
|
||||
|
||||
ErrJson login(String userName, String password);
|
||||
|
||||
String getToken(String userName);
|
||||
|
||||
int getTokenStatus(String userName);
|
||||
|
||||
ErrJson updateName(String userName, String nickname);
|
||||
|
||||
int getUserId(String userName);
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
package com.yuxihan.servies.impl;
|
||||
|
||||
import com.yuxihan.bean.ErrJson;
|
||||
import com.yuxihan.bean.Token;
|
||||
import com.yuxihan.bean.User;
|
||||
import com.yuxihan.mapper.UserMapper;
|
||||
import com.yuxihan.servies.UserServies;
|
||||
@ -9,13 +10,15 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
import java.util.*;
|
||||
|
||||
@Service
|
||||
public class UserServiesImpl implements UserServies {
|
||||
|
||||
private static String SUCCESS = "0";
|
||||
private static String FAIL = "1";
|
||||
private static Integer ENABLE = 0;
|
||||
private static Integer STOP = 1;
|
||||
//注入接口代理对象
|
||||
@Autowired
|
||||
private UserMapper userMapper;
|
||||
@ -25,10 +28,48 @@ public class UserServiesImpl implements UserServies {
|
||||
private MD5Util md5Util;
|
||||
@Autowired
|
||||
private User user;
|
||||
@Autowired
|
||||
private Token token;
|
||||
|
||||
public List<User> findAll(){
|
||||
return userMapper.findAll();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户id
|
||||
* @param userName
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public int getUserId(String userName) {
|
||||
return userMapper.getUserId(userName);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改昵称
|
||||
* @param userName
|
||||
* @param nickname
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public ErrJson updateName(String userName, String nickname) {
|
||||
errJson.setErrCode(FAIL);
|
||||
errJson.setErrMsg("");
|
||||
if (userName.isEmpty()) {
|
||||
errJson.setErrMsg("用户名不能为空");
|
||||
return errJson;
|
||||
}
|
||||
if (nickname.isEmpty()) {
|
||||
errJson.setErrMsg("昵称不能为空");
|
||||
return errJson;
|
||||
}
|
||||
user.setNickname(nickname);
|
||||
user.setName(userName);
|
||||
userMapper.updateName(user);
|
||||
errJson.setErrCode(SUCCESS);
|
||||
return errJson;
|
||||
}
|
||||
|
||||
/**
|
||||
* 登录
|
||||
*
|
||||
@ -44,7 +85,10 @@ public class UserServiesImpl implements UserServies {
|
||||
return errJson;
|
||||
}
|
||||
if (userMapper.getPsd(user).equals(md5Util.string2MD5(password))) {
|
||||
Map<String, Object> ticket = new HashMap<>();
|
||||
ticket.put("token",addLoginTicket(userMapper.getUserId(userName)));
|
||||
errJson.setErrCode(SUCCESS);
|
||||
errJson.setResult(ticket);
|
||||
return errJson;
|
||||
} else {
|
||||
errJson.setErrMsg("密码错误");
|
||||
@ -52,6 +96,7 @@ public class UserServiesImpl implements UserServies {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 注册用户
|
||||
* @param userName,password
|
||||
@ -60,6 +105,8 @@ public class UserServiesImpl implements UserServies {
|
||||
if (isNotEmpty(userName,password)) return errJson;
|
||||
user.setPassword( md5Util.string2MD5(password));
|
||||
user.setName(userName);
|
||||
//默认昵称
|
||||
user.setNickname("小胖猪"+Calendar.getInstance().getTimeInMillis());
|
||||
if (0 == userMapper.isExistsUser(user)) {
|
||||
userMapper.addUser(user);
|
||||
errJson.setErrCode(SUCCESS);
|
||||
@ -80,6 +127,26 @@ public class UserServiesImpl implements UserServies {
|
||||
return userMapper.isExistsUser(user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户token状态
|
||||
* @param userName
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public int getTokenStatus(String userName) {
|
||||
return userMapper.getTokenStatus(userMapper.getUserId(userName));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户token
|
||||
* @param userName
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public String getToken(String userName) {
|
||||
return userMapper.getToken(userMapper.getUserId(userName));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户密码
|
||||
* @param userName
|
||||
@ -99,7 +166,6 @@ public class UserServiesImpl implements UserServies {
|
||||
private boolean isNotEmpty(@RequestParam("userName") String userName, @RequestParam("password") String password) {
|
||||
errJson.setErrCode(FAIL);
|
||||
errJson.setErrMsg("");
|
||||
errJson.setResult("");
|
||||
if (userName.isEmpty()) {
|
||||
errJson.setErrMsg("用户名不能为空");
|
||||
return true;
|
||||
@ -111,6 +177,13 @@ public class UserServiesImpl implements UserServies {
|
||||
return false;
|
||||
}
|
||||
|
||||
private String addLoginTicket(int userId){
|
||||
token.setUserToken(UUID.randomUUID().toString().replaceAll("_",""));
|
||||
token.setUserId(userId);
|
||||
token.setTokenStatus(ENABLE);
|
||||
userMapper.insertToken(token);
|
||||
return token.getUserToken();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -8,6 +8,9 @@ mybatis:
|
||||
spring:
|
||||
datasource:
|
||||
url: jdbc:mysql://localhost:3305/test?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
|
||||
# url: jdbc:mysql://sdu.yuxihan.com:3306/test?useUnicode=true&characterEncoding=utf-8
|
||||
driver-class-name: com.mysql.jdbc.Driver
|
||||
username: root
|
||||
password: 20190914
|
||||
|
||||
#show variables like 'char%';
|
@ -24,13 +24,13 @@
|
||||
insert into user_ticket (user_id,user_token,token_status) values(#{userId},#{userToken},#{tokenStatus}) on duplicate key update token_status=#{tokenStatus};
|
||||
</insert>
|
||||
<!-- 根据用户id查对应token -->
|
||||
<select id="getToken" resultType="String" parameterMap="BaseTokenMap">
|
||||
<select id="getToken" resultType="String" parameterType="INTEGER">
|
||||
select
|
||||
user_token
|
||||
from user_ticket where user_id=#{userId}
|
||||
</select>
|
||||
<!-- 根据用户token状态 -->
|
||||
<select id="getTokenStatus" resultType="INTEGER" parameterMap="BaseTokenMap">
|
||||
<!-- 根据用户id获取token状态 -->
|
||||
<select id="getTokenStatus" resultType="INTEGER" parameterType="INTEGER">
|
||||
select
|
||||
token_status
|
||||
from user_ticket where user_id=#{userId}
|
||||
@ -40,13 +40,16 @@
|
||||
|
||||
<!-- user_info 用户信息表 -->
|
||||
<parameterMap id="BaseUserMap" type="com.yuxihan.bean.User"/>
|
||||
|
||||
<sql id="Base_Column_List">user_name,user_id,password,created_time</sql>
|
||||
<sql id="User_Column_List">user_name,password</sql>
|
||||
<resultMap id="BaseResultMap" type="com.yuxihan.bean.User">
|
||||
<sql id="User_Column_List">user_name,password,nickname</sql>
|
||||
<resultMap id="BaseUserMap" type="com.yuxihan.bean.User">
|
||||
<result column="user_name" property="userName"/>
|
||||
<result column="user_id" property="userId"/>
|
||||
<result column="password" property="password"/>
|
||||
<result column="created_time" property="createdTime"/>
|
||||
<result column="nickname" property="nickname"/>
|
||||
|
||||
</resultMap>
|
||||
<!--查询全部用户-->
|
||||
<select id="findAll" resultMap="BaseUserMap">
|
||||
@ -55,7 +58,7 @@
|
||||
from user_info
|
||||
</select>
|
||||
<!--查询指定用户-->
|
||||
<select id="findUser" resultMap="BaseResultMap" parameterMap="BaseUserMap">
|
||||
<select id="findUser" resultMap="BaseUserMap" parameterType="String">
|
||||
select
|
||||
<include refid="Base_Column_List"/>
|
||||
from user_info where user_name=#{userName}
|
||||
@ -67,7 +70,7 @@
|
||||
from user_info where user_name=#{userName}
|
||||
</select>
|
||||
<!-- 查询用户id -->
|
||||
<select id="getUserId" resultType="INTEGER" parameterMap="BaseUserMap">
|
||||
<select id="getUserId" resultType="INTEGER" parameterType="String">
|
||||
select
|
||||
user_id
|
||||
from user_info where user_name=#{userName}
|
||||
@ -80,6 +83,9 @@
|
||||
</select>
|
||||
<!-- 新增用户 -->
|
||||
<insert id="addUser" parameterMap="BaseUserMap" keyProperty="user_id">
|
||||
insert into user_info (<include refid="User_Column_List"/>) values (#{userName},#{password})
|
||||
insert into user_info (<include refid="User_Column_List"/>) values (#{userName},#{password},#{nickname})
|
||||
</insert>
|
||||
<update id="updateName" parameterMap="BaseUserMap">
|
||||
update user_info set nickname=#{nickname} where user_name=#{userName}
|
||||
</update>
|
||||
</mapper>
|
||||
|
@ -5,7 +5,7 @@ import org.junit.Test;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
|
||||
@SpringBootTest
|
||||
public class StuserverApplicationTests {
|
||||
public class SduServerApplicationTests {
|
||||
|
||||
@Test
|
||||
public void contextLoads() {
|
Loading…
Reference in New Issue
Block a user