未编译整理

swagger2使用


import com.bw.bean.User;
import com.bw.service.UserService;
import com.bw.util.ExcelUtil;
import com.bw.util.FileTransferUtil;
import com.bw.util.MD5Util;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.jasypt.encryption.StringEncryptor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import springfox.documentation.annotations.ApiIgnore;

import javax.servlet.http.HttpServletResponse;
import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.List;

@RestController
public class UserController {

    @Value("${myImgDir}")
    private String myImgDir;

    @Autowired
    private UserService userService;

    @Autowired
    private StringEncryptor stringEncryptor;


    @RequestMapping("/testEnc")
    public String encryptPwd() {
        String result = stringEncryptor.encrypt("root");
        return result;
    }

    @ApiOperation(value="查询所有用户",notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(dataType = "String",name="uid")
    })
    @RequestMapping(value="/selectAll",method = RequestMethod.GET)
    public List<User> selectAll(){

        return userService.selectAll();
    }

    //注册
    @ApiIgnore
    @RequestMapping("/doRegister")
    public User doRegister(User user, @RequestParam("imgFile") MultipartFile imgFile){

        //密码加密
        String oldPwd = user.getPassword();
        String newPwd = MD5Util.MD5(oldPwd);
        user.setPassword(newPwd);

        //上传文件
        String filename = FileTransferUtil.uploadFile(myImgDir,imgFile);

        //设置头像属性
        user.setHeadImg(filename);

        //记录web日志
       // logger.info("用户请求的参数为:{},{}",user.toString(),imgFile.getOriginalFilename());


        //保存用户信息,并返回
        return userService.registerUser(user);
    }


    @RequestMapping("/exportExcel")
    public String exportExcel(HttpServletResponse response) throws Exception{

        //查询出要导出的数据
         List<User> users = userService.selectAll();

        //遵循poi的操作规范将数据写入到excel中
        ExcelUtil.exportUserList(response,users);

        return "success";
    }




}

JPA使用

@Entity
@Table(name="t_user")
public class User implements Serializable{

    @Id
    @GeneratedValue
    private Integer uid;
    @Column
    private String username;
    @Column
    private String password;
    @Column
    private Integer age;
    @Column
    private String gender;
    @Column
    private String headImg;
    @Column
    private String hobby;

dao层处理

public interface UserRepository extends JpaRepository<User,Integer> {

    //根据用户名和密码查询用户
    public User findUserByUsernameAndPassword(String username,String password);

    //根据uid查询用户
    public User findUserByUid(Integer uid);

    @Query(value = "update User set username=?1,password=?2,age=?3,headImg=?4,gender=?5,hobby=?6 where uid=?7 ")
    @Modifying
    public void updateUser(@Param("username") String username,@Param("password")  String password,@Param("age")  Integer age, @Param("gender") String       gender,@Param("headImg")  String headImg, @Param("hobby") String hobby, @Param("uid") Integer uid);

}



service层可以写的接口,因为是jpa所以可以比之前更多


    //根据用户名和密码查询用户
    public User login(String username, String password);
    //注册功能
    public User registerUser(User user);
    //修改功能
    public void updateUser(User user);
    //根据id删除用户
    public void deleteByUid(Integer uid);
    //根据uid查询用户
    public User findUserByUid(Integer uid);
    public List<User> selectAll();


实现


    @Autowired
    private UserRepository dao;


    @Override
    public User login(String username, String password) {
        return dao.findUserByUsernameAndPassword(username,password);
    }

    @Override
    public User registerUser(User user) {
        dao.save(user);
        return user;
    }

    @Override
    public void updateUser(User user) {
        dao.updateUser(user.getUsername(),user.getPassword(),user.getAge(),user.getGender(),user.getHeadImg(),user.getHobby(),user.getUid());
    }

    @Override
    public void deleteByUid(Integer uid) {
        dao.delete(uid);
    }

    @Override
    public User findUserByUid(Integer uid) {
        return dao.findUserByUid(uid);
    }

    @Override
    public List<User> selectAll() {
        return dao.findAll();
    }





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值