springboot-web开发
生活随笔
收集整理的這篇文章主要介紹了
springboot-web开发
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
文章目錄
- 抽取公共頁面
- 遍歷數(shù)據(jù)
- 攔截器
- 文件上傳
- 原生servlet注入
抽取公共頁面
表單提交
<form class="form-signin" action="index.html" method="post" th:action="@{/login}">IndexController
//去登錄頁@GetMapping(value = {"/","/login"})public String loginPage(){return "login";}@PostMapping("/login")public String main(User user, HttpSession session, Model model){if(StringUtils.hasLength(user.getUsername()) && "12345".equals(user.getPassword())){session.setAttribute("loginUser",user);//登錄成功重定向到main.html,防止表單重復(fù)提交return "redirect:/main.html";}else {model.addAttribute("msg","賬號(hào)密碼錯(cuò)誤");return "login";}}/*跳轉(zhuǎn)頁面,去main頁面*/@GetMapping("/main.html")public String mainPage(HttpSession session,Model model){Object loginUser = session.getAttribute("loginUser");if(loginUser != null){return "main";}else {model.addAttribute("msg","請(qǐng)重新登錄");return "login";}}登錄時(shí)錯(cuò)誤提示
<label style="color: red" th:text="${msg}"></label>顯示登錄用戶
<a href="#" class="btn btn-default dropdown-toggle" data-toggle="dropdown"><img src="images/photos/user-avatar.png" alt="" />[[${session.loginUser.username}]]<span class="caret"></span></a>遍歷數(shù)據(jù)
@GetMapping("/dynamic_table")public String dynamic_table(Model model){List<User> users = Arrays.asList(new User("zhangsan","123435"),new User("lisi","1234567"),new User("wangwu","12345678"),new User("jahui","93749237"));model.addAttribute("users",users);return "table/dynamic_table";} <thead><tr><th>#</th><th>用戶名</th><th>密碼</th></tr></thead><tbody><tr class="gradeX" th:each="user,status:${users}"><td th:text="${status.count}">aaa</td><td th:text="${user.username}">bbb</td><td>[[${user.password}]]</td></tr></tbody></table>攔截器
@Configuration public class AdminWebConfig implements WebMvcConfigurer {@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(new LoginInterceptor()).addPathPatterns("/**").excludePathPatterns("/","/login","/css/**","/fonts/**","/img/**","/js/**");} } /*目標(biāo)方法執(zhí)行之前*/@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {//登錄檢查HttpSession session = request.getSession();Object loginUser = session.getAttribute("loginUser");if(loginUser != null){return true;}// session.setAttribute("msg","先登錄"); // response.sendRedirect("/");request.setAttribute("msg","請(qǐng)先登錄");request.getRequestDispatcher("/").forward(request,response);return false;}/*目標(biāo)方法執(zhí)行完成以后*/@Overridepublic void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {}/*頁面渲染之后*/@Overridepublic void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {}文件上傳
@Controller public class FormTestController {@GetMapping("/form_layouts")public String from_layouts() {return "form/form_layouts";}/*** 自動(dòng)封裝上傳過來的文件* @param email* @param username* @param headerImg* @param photos* @return*/@PostMapping("/upload")public String upload(@RequestParam("email") String email,@RequestParam("username") String username,@RequestParam("headerImg") MultipartFile headerImg,@RequestPart("photos") MultipartFile[] photos) throws IOException {if(!headerImg.isEmpty()){String originalFilename = headerImg.getOriginalFilename();headerImg.transferTo(new File("D:\\abc\\"+originalFilename));}if(photos.length>0){for(MultipartFile photo:photos){if(!photo.isEmpty()){String originalFilename = photo.getOriginalFilename();photo.transferTo(new File("D:\\abc\\"+originalFilename));}}}return "main";}} <form role="form" th:action="@{/upload}" method="post" enctype="multipart/form-data"><div class="form-group"><label for="exampleInputEmail1">郵箱</label><input type="email" name="email" class="form-control" id="exampleInputEmail1" placeholder="Enter email"></div><div class="form-group"><label for="exampleInputPassword1">名字</label><input type="password" name="username" class="form-control" id="exampleInputPassword1" placeholder="Password"></div><div class="form-group"><label for="exampleInputFile">頭像</label><input type="file" name="headerImg" id="exampleInputFile"></div><div class="form-group"><label for="exampleInputFile">生活照</label><input type="file" name="photos" multiple></div><div class="checkbox"><label><input type="checkbox"> 檢查</label></div><button type="submit" class="btn btn-primary">提交</button></form> spring.servlet.multipart.max-file-size=10MB spring.servlet.multipart.max-request-size=100MB原生servlet注入
@WebServlet(urlPatterns = "/my") public class MyServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {resp.getWriter().write("66666");} } @ServletComponentScan(basePackages = "com.atjh.boot05webadmin") @SpringBootApplication public class Boot05WebAdminApplication {public static void main(String[] args) {SpringApplication.run(Boot05WebAdminApplication.class, args);}}總結(jié)
以上是生活随笔為你收集整理的springboot-web开发的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 二叉树、二叉排序树及其遍历
- 下一篇: springboot-数据访问