67,550
社区成员




<context:component-scan base-package="cn.fourinnovation.note"></context:component-scan>
<mvc:annotation-driven></mvc:annotation-driven>
<util:properties id="jdbc" location="classpath:jdbc.properties"></util:properties>
<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource">
<property name="driverClassName" value="#{jdbc.driver}"></property>
<property name="url" value="#{jdbc.url}"></property>
<property name="username" value="#{jdbc.user}"></property>
<property name="password" value="#{jdbc.password}"></property>
</bean>
<bean id="sqlsessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"/>
<property name="mapperLocations" value="classpath:cn/fourinnovation/note/sql/*.xml"/>
</bean>
<bean id="mapperScannerConfigurer" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="cn.fourinnovation.note.dao"/>
</bean>
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserDao userDao;
public NoteResult login(String email, String password) {
NoteResult result=new NoteResult();
//加密密码
String pwd=NoteUtil.md5(password);
User user=userDao.findByEmail(email);
if(user==null){
result.setStatus(1);
result.setMsg("用户不存在");
}else{
if(user.getPassword().equals(pwd)){
result.setStatus(0);
result.setMsg("账号和密码正确");
String token=NoteUtil.createToken();
Map<String,Object> data=new HashMap<String,Object>();
data.put("userToken", token);
//这里出了问题,user.getUserid()应该是有值的,但是它在这里却是null
data.put("userId", user.getUserid());
result.setData(data);
System.out.println(data);
userDao.updateToken(data);
}else{
result.setStatus(2);
result.setMsg("密码不正确");
}
}
return result;
}
public interface UserDao {
public User findByEmail(String email);
public int save(User user);
public int updateToken(Map<String,Object> parameter);
public String findUserId(String email);
}
<mapper namespace="cn.fourinnovation.note.dao.UserDao">
<select id="findByEmail" parameterType="string" resultType="cn.fourinnovation.note.bean.User">
select * from user where email=#{email}
</select>
<insert id="save" parameterType="cn.fourinnovation.note.bean.User">
insert into user (email,password,user_id) values (#{email},#{password},#{userid})
</insert>
<update id="updateToken" parameterType="map">
update user set usertoken=#{usertoken} where user_id=#{userid}
</update>
<select id="findUserId" parameterType="string" resultType="string">
select user_id from user where email=#{email}
</select>
</mapper>
public class User implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
//邮箱
private String email;
//密码
private String password;
//用户序号
private String userid;
//用户口令
private String usertoken;
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getUserid() {
return userid;
}
public void setUserid(String userid) {
this.userid = userid;
}
public String getUsertoken() {
return usertoken;
}
public void setUsertoken(String usertoken) {
this.usertoken = usertoken;
}
}
private int status;
private String msg;
private Object data;
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public Object getData() {
return data;
}
public void setData(Object data) {
this.data = data;
}