好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Java项目之java+springboot+ssm实现理财管理系统设计

理财系统:

设计使用了当前较为流行的 spring boot , spring,spring mvc , mybatis , shiro 框架分页处理使用了pagehelper进行操作,
前台使用了模板语言 thymeleaf ,界面较为炫酷,适合年轻朋友。开发工具采用的是IDEA。
该系统主要解决了理财中的一些问题

包含功能: 权限管理,用户信息管理,理财产品管理等内容。

登陆控制层: 

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

@Controller

@RequestMapping ( "/login" )

public class LoginController {

    @Autowired

    UserService userService;

 

    @Autowired

    AdminService adminService;

 

    / / public static final Map <String, HttpSession> USR_SESSION = new HashMap<>();

    public static String last_login = "";

 

    @GetMapping( "/loginVerifyUsername/{username}" )

    @ResponseBody

    public Msg loginVerifyUsername(@PathVariable( "username" ) String username) {

        User user = userService.selectUserByTerms(username, null);

        if (user ! = null) {

            return Msg.success();

        }

        Admin admin = adminService.selectAdminByTerms(username, null);

        if (admin ! = null) {

            return Msg.success();

        }

        return Msg.fail();

    }

 

    @GetMapping( "/verifyLogin" )

    @ResponseBody

    public Msg verifyLogin(@RequestParam( "username" ) String username, @RequestParam( "password" ) String password,

                            HttpSession session) {

 

        User loginUser = userService.selectUserByTerms(username, password);

        if (loginUser ! = null) {

            / / 获取当前用户

            Subject subject = SecurityUtils.getSubject();

            / / 封装用户登录数据

            UsernamePasswordToken token = new UsernamePasswordToken(username, password);

            try {

                subject.login(token);

                return Msg.success().add( "url" , "/user/index.html" );

            } catch (UnknownAccountException | IncorrectCredentialsException e) {

                return Msg.fail();

            }

        }

 

        Admin admin = adminService.selectAdminByTerms(username, password);

        if (admin ! = null) {

            / / 获取当前用户

            Subject subject = SecurityUtils.getSubject();

            / / 封装用户登录数据

            UsernamePasswordToken token = new UsernamePasswordToken(username, password);

            try {

                subject.login(token);

                return Msg.success().add( "url" , "/admin/index.html" );

            } catch (UnknownAccountException | IncorrectCredentialsException e) {

                / / model.addAttribute( "msg" , "密码错误" );

                return Msg.fail();

            }

        }

        return Msg.fail();

    }

 

    @PostMapping( "/register" )

    @ResponseBody

    public Msg register(@RequestParam( "username" ) String username, @RequestParam( "password" ) String password) {

        User user = new User();

        user.setUsername(username);

        user.setPassword(password);

        user.setStatus( 0 );

        user.setReputation( "良好" );

        userService.insertUser(user);

        return Msg.success().add( "url" , "/" );

    }

 

 

}

用户信息控制层:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

146

147

148

149

150

151

152

153

154

155

156

157

158

159

160

161

162

163

164

165

166

167

168

169

170

171

172

173

174

175

176

177

178

179

180

181

182

183

184

185

186

187

188

189

190

191

192

193

194

195

196

197

198

199

200

201

202

203

204

205

206

207

208

209

210

211

212

213

214

215

216

217

218

219

220

221

222

223

224

225

226

227

228

229

230

231

232

233

234

235

236

237

238

239

240

241

242

243

244

245

246

247

248

249

250

251

252

253

254

255

256

257

258

259

260

261

262

263

264

265

266

267

268

269

270

271

272

273

274

275

276

277

278

279

280

281

282

283

284

285

286

287

288

289

290

291

292

293

294

295

296

297

298

299

300

301

302

303

304

305

306

307

308

309

310

311

312

313

314

315

316

317

318

319

320

321

322

323

324

325

326

327

328

329

330

331

332

333

334

335

@Controller

public class UserController {

 

    @Autowired

    UserService userService;

 

    / * *

      * 跳转到账户安全界面(用户)(修改密码)

      *

      * @param model

      * @ return

      * /

    @RequestMapping( "/user/personal/toSecurity.html" )

    public String toSecurity(Model model) {

        model.addAttribute( "pageTopBarInfo" , "账户安全界面" );

        model.addAttribute( "activeUrl1" , "personalActive" );

        model.addAttribute( "activeUrl2" , "securityActive" );

        return "/user/personal/security" ;

    }

 

    / * *

      * 跳转到个人信息界面(用户)

      *

      * @param model

      * @param session

      * @ return

      * /

    @RequestMapping( "/user/personal/toProfile.html" )

    public String toProfile(Model model, HttpSession session) {

        User loginUser = (User) session.getAttribute( "loginUser" );

        User user = userService.selectUserById(loginUser.getId());

        model.addAttribute( "user" , user);

 

        model.addAttribute( "pageTopBarInfo" , "个人信息界面" );

        return "/user/personal/profile" ;

    }

 

    / * *

      * 判断并更新密码(用户)

      *

      * @param request

      * @ return

      * /

    @PutMapping( "/user/updatePwd" )

    @ResponseBody

    public Msg updatePwd(HttpServletRequest request, HttpSession session) {

 

        String id = request.getParameter( "id" );

        User user = userService.selectUserById(Integer.valueOf( id ));

        String oldpwd = request.getParameter( "oldpwd" );

        String newpwd = request.getParameter( "newpwd" );

        User verifyExistUser = userService.selectUserByTerms(user.getUsername(), oldpwd);

        if (verifyExistUser ! = null) {

            user.setPassword(newpwd);

 

            / / 当前登录用户信息改变时session里面存储的用户信息也应该同时改变

            User loginUser = (User) session.getAttribute( "loginUser" );

            if (Integer.valueOf( id ) = = (loginUser.getId())) {

                session.setAttribute( "loginUser" , user);

            }

            userService.updateUser(user);

            return Msg.success();

        }

        return Msg.fail();

    }

 

    / * *

      * 更新用户信息(用户更改自己信息)

      *

      * @param id

      * @param user

      * @param session

      * @ return

      * /

    @PutMapping( "/user/updateUserProfile/{userId}" )

    @ResponseBody

    public Msg updateUserProfile(@PathVariable( "userId" ) Integer id , User user, HttpSession session) {

        user.setId( id );

        Integer result = userService.updateUser(user);

        if (result = = 1 ) {

            / / 当前登录用户信息改变时session里面存储的用户信息也应该同时改变

            User loginUser = (User) session.getAttribute( "loginUser" );

            if (loginUser! = null){

                if ( id = = (loginUser.getId())) {

                    session.setAttribute( "loginUser" , userService.selectUserById( id ));

                }

            }

            return Msg.success();

        }

        return Msg.fail();

    }

 

    / * *

      * 用户强制下线(管理员更改用户信息)

      *

      * @param id

      * @param session

      * @ return

      * /

    @PutMapping( "/user/updateUserStatus/{id}" )

    @ResponseBody

    public Msg updateUserStatus(@PathVariable( "id" ) Integer id , HttpSession session) {

        User user = userService.selectUserById( id );

        user.setStatus( 0 );

        Integer result = userService.updateUser(user);

        if (result = = 1 ) {

            / / 当前登录用户强制下线

            session.removeAttribute( "loginUser" );

            return Msg.success();

        }

        return Msg.fail();

    }

 

    / * *

      * 跳转到用户信息界面(管理员)

      * @param pageNum

      * @param pageSize

      * @param model

      * @param session

      * @ return

      * /

    @GetMapping( "/admin/userinfo/toUserInfo.html" )

    public String toUserInfo(@RequestParam(value = "pageNum" , defaultValue = "1" ) Integer pageNum,

                              @RequestParam(value = "pageSize" , defaultValue = "5" ) Integer pageSize,

                              Model model, HttpSession session) {

        / / 引入PageHelper插件,在查询之前调用startPage方法,传入页码以及每页大小

        PageHelper.startPage(pageNum, pageSize);

        List <User> list = userService.selectAllUser();

        / / 使用PageInfo包装查询后的结果,并交给页面处理

        / / PageInfo封装了详细的分页信息,包括我们查询出来的数据,还可以传入连续显示的页数( 5 )

        PageInfo<User> pageInfo = new PageInfo<User>( list , 5 );

        model.addAttribute( "userPageInfo" ,pageInfo);

        model.addAttribute( "userList" , list );

 

        model.addAttribute( "activeUrl1" , "userInfoActive" );

        model.addAttribute( "activeUrl2" , "userInfoActive" );

        model.addAttribute( "pageTopBarInfo" , "用户信息界面" );

        return "/admin/userinfo/userinfo" ;

    }

 

    / * *

      * 添加用户(管理员)

      * @param user

      * @ return

      * /

    @PostMapping( "/user/addUser" )

    @ResponseBody

    public Msg addUser(User user){

        user.setStatus( 0 );

        user.setReputation( "良好" );

        Integer result = userService.insertUser(user);

        if (result = = 1 ){

            return Msg.success();

        }

        return Msg.fail();

    }

 

    / * *

      * 更新用户信息时回显用户信息(管理员)

      * @param id

      * @ return

      * /

    @GetMapping( "/user/getUserById/{id}" )

    @ResponseBody

    public Msg getUserInfoById(@PathVariable( "id" )Integer id ){

        User user = userService.selectUserById( id );

        return Msg.success().add( "user" ,user);

    }

 

    / * *

      * 删除用户(管理员)

      * @param id

      * @param session

      * @ return

      * /

    @DeleteMapping( "/user/deleteUserById/{id}" )

    @ResponseBody

    public Msg deleteUserById(@PathVariable( "id" )Integer id ,HttpSession session){

        Integer result = userService.deleteUserById( id );

        if (result = = 1 ){

            / / 删除用户时应先判断这个用户是否在线

            User loginUser = (User) session.getAttribute( "loginUser" );

            if (loginUser! = null){

                if ( id = = (loginUser.getId())) {

                    session.removeAttribute( "loginUser" );

                }

            }

            return Msg.success();

        }

        return Msg.fail();

    }

 

    / * *

      * 跳转到用户信誉管理界面(管理员)

      * @param pageNum

      * @param pageSize

      * @param model

      * @param session

      * @ return

      * /

    @GetMapping( "/admin/userinfo/toReputation.html" )

    public String toUserReputation(@RequestParam(value = "pageNum" , defaultValue = "1" ) Integer pageNum,

                              @RequestParam(value = "pageSize" , defaultValue = "5" ) Integer pageSize,

                              Model model, HttpSession session) {

        PageHelper.startPage(pageNum, pageSize);

        List <User> list = userService.selectAllUser();

        PageInfo<User> pageInfo = new PageInfo<User>( list , 5 );

        model.addAttribute( "userPageInfo" ,pageInfo);

        model.addAttribute( "userList" , list );

 

        model.addAttribute( "activeUrl1" , "userInfoActive" );

        model.addAttribute( "activeUrl2" , "reputationActive" );

        model.addAttribute( "pageTopBarInfo" , "用户信誉界面" );

        return "/admin/userinfo/reputation" ;

    }

 

}

 

银行卡管理界面:

@Controller

public class BankCardController {

 

    @Autowired

    BankCardService bankCardService;

 

    / * *

      * 跳转到银行卡管理界面(用户)

      *

      * @param model

      * @param session

      * @ return

      * /

    @GetMapping( "/user/personal/toBankCard.html" )

    public String toBankCard(Model model, HttpSession session) {

        User loginUser = (User) session.getAttribute( "loginUser" );

        List <Bankcard> list = bankCardService.selectBankCardByUserId(loginUser.getId());

        model.addAttribute( "bankCardList" , list );

 

        model.addAttribute( "pageTopBarInfo" , "银行卡管理界面" );

        model.addAttribute( "activeUrl1" , "personalActive" );

        model.addAttribute( "activeUrl2" , "bankCardActive" );

        return "/user/personal/bankcard" ;

    }

 

    / * *

      * 新增银行卡

      *

      * @param bankcard

      * @param session

      * @ return

      * /

    @PostMapping( "/user/addBankCard" )

    @ResponseBody

    public Msg addBankCard(Bankcard bankcard, HttpSession session) {

        / / System.out.println(bankcard.getCardbank());

        User loginUser = (User) session.getAttribute( "loginUser" );

        bankcard.setUserid(loginUser.getId());

        Integer result = bankCardService.insertBankCard(bankcard);

        if (result = = 1 ) {

            return Msg.success();

        }

        return Msg.fail();

    }

 

    / * *

      * 修改银行卡时回显银行卡信息

      *

      * @param id

      * @ return

      * /

    @GetMapping( "/user/getBankCardById/{id}" )

    @ResponseBody

    public Msg getBankCardById(@PathVariable( "id" ) Integer id ) {

        Bankcard bankcard = bankCardService.selectBankCardById( id );

        return Msg.success().add( "bankcard" , bankcard);

    }

 

    / * *

      * 修改银行卡信息

      *

      * @param id

      * @param bankcard

      * @ return

      * /

    @PutMapping( "/user/updateBankCard/{update-id}" )

    @ResponseBody

    public Msg updateBankCard(@PathVariable( "update-id" ) Integer id , Bankcard bankcard) {

        bankcard.setId( id );

        Integer result = bankCardService.updateBankCard(bankcard);

        if (result = = 1 ) {

            return Msg.success();

        }

        return Msg.fail();

    }

 

    / * *

      * 删除银行卡

      *

      * @param id

      * @ return

      * /

    @DeleteMapping( "/user/deleteBankCard/{id}" )

    @ResponseBody

    public Msg deleteBankCard(@PathVariable( "id" ) Integer id ) {

        Integer result = bankCardService.deleteBankCardById( id );

        if (result = = 1 ) {

            return Msg.success();

        }

        return Msg.fail();

    }

 

    / * *

      * 跳转到银行卡管理界面(管理员)

      * @param pageNum

      * @param pageSize

      * @param model

      * @param session

      * @ return

      * /

    @GetMapping( "/admin/userinfo/toBankCard.html" )

    public String toBankCard1(@RequestParam(value = "pageNum" , defaultValue = "1" ) Integer pageNum,

                              @RequestParam(value = "pageSize" , defaultValue = "5" ) Integer pageSize,

                              Model model, HttpSession session) {

        PageHelper.startPage(pageNum, pageSize);

        List <Bankcard> list = bankCardService.selectAllBankCard();

        PageInfo<Bankcard> pageInfo = new PageInfo<Bankcard>( list , 5 );

        model.addAttribute( "bankcardPageInfo" ,pageInfo);

        model.addAttribute( "bankcardList" , list );

 

        model.addAttribute( "pageTopBarInfo" , "银行卡管理界面" );

        model.addAttribute( "activeUrl1" , "userInfoActive" );

        model.addAttribute( "activeUrl2" , "bankcardActive" );

        return "/admin/userinfo/bankcard" ;

    }

}

到此这篇关于Java项目java+springboot+ssm实现理财管理系统设计的文章就介绍到这了,更多相关java+springboot+ssm实现理财管理系统设计内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

原文链接:https://blog.csdn.net/m0_66863468/article/details/122834973

查看更多关于Java项目之java+springboot+ssm实现理财管理系统设计的详细内容...

  阅读:15次