国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

SpringSecurity01(使用傳統(tǒng)的xml方式開發(fā),且不連接數(shù)據(jù)庫)

Gilbertat / 1955人閱讀

摘要:創(chuàng)建一個工程在里面添加依賴,依賴不要隨便改我改了出錯了好幾次都找不到原因可以輕松的將對象轉(zhuǎn)換成對象和文檔同樣也可以將轉(zhuǎn)換成對象和配置

1.創(chuàng)建一個web工程
2.在pom里面添加依賴,依賴不要隨便改,我改了出錯了好幾次都找不到原因


    UTF-8
    1.7
    1.7
    2.5.0
    1.2
    3.0-alpha-1
  
  
    
    
      org.springframework
      spring-webmvc
      4.3.13.RELEASE
    
    
      org.springframework
      spring-web
      4.3.13.RELEASE
    
    
      org.springframework
      spring-context
      4.3.13.RELEASE
    
    
      org.springframework
      spring-beans
      4.3.13.RELEASE
    
    
      org.springframework
      spring-core
      4.3.13.RELEASE
    
    
    
      org.springframework.security
      spring-security-config
      4.2.3.RELEASE
    
    
      org.springframework.security
      spring-security-web
      4.2.3.RELEASE
    

    
    
    
      com.fasterxml.jackson.core
      jackson-core
      ${jacksonVersion}
    
    
      com.fasterxml.jackson.core
      jackson-annotations
      ${jacksonVersion}
    

    
      com.fasterxml.jackson.core
      jackson-databind
      ${jacksonVersion}
    
    
      org.codehaus.jackson
      jackson-mapper-asl
      1.9.13
    
    
      org.codehaus.jackson
      jackson-core-asl
      1.9.13
    

    
    
      jstl
      jstl
      ${jstlVersion}
    
    
      javax.servlet
      servlet-api
      ${servletVersion}
      provided
    
    
      javax.servlet.jsp
      jsp-api
      2.2
      provided
    
  

3.配置web.xml



  user-manager
  
    index.jsp
  

  
  
    contextConfigLocation
    
      classpath:applicationContext.xml
      classpath:springSecurity.xml
    
  
  
  
    org.springframework.web.context.ContextLoaderListener
  



  
  
    springSecurityFilterChain
    org.springframework.web.filter.DelegatingFilterProxy
  
  
    springSecurityFilterChain
    /*
  

  
  
    encodingFilter
    org.springframework.web.filter.CharacterEncodingFilter
    
      encoding
      UTF-8
    
    
      forceEncoding
      true
    
  
  
    encodingFilter
    /*
  
  
  
    spring
    org.springframework.web.servlet.DispatcherServlet
    
      contextConfigLocation
      
      classpath:springmvc.xml
    
    
    1
  
  
    spring
    /
  
  

4.配置applicationContext.xml



5.配置springmvc.xml



    
    

    
    
        
        
            
            
                
                    
                        text/plain;charset=utf-8
                        text/html;charset=UTF-8
                    
                
            
        
    
    
    



    
    
        
        
    
    
    
    
    
    
    
    
    
        
        
        
        
    

6.配置springSecurity.xml



    
    
        
        

        
        
        
        
        
        
        
        
        
        
        


        
        

        
        
        
    

    
    
          
        
              
            
            
            
            
        

    

    
    

    
    

7.自定義成功處理的攔截器 MyAuthenticationSuccessHandler

public class MyAuthenticationSuccessHandler implements AuthenticationSuccessHandler {
    private  final  static ObjectMapper objectMapper=new ObjectMapper();
    @Override
    public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) throws IOException, ServletException {
        //這里是可以拿到用戶對的登錄名的
        String username = request.getParameter("username");
        System.out.println(username);
        response.setContentType("application/json;charset=utf-8");
        String successMessage = objectMapper.writeValueAsString(new JsonData(200, "登陸成功"));
        response.getWriter().print(successMessage);
    }
}

自定義失敗處理器的攔截器

public class MyAuthenticationFailureHandler implements AuthenticationFailureHandler{
    private  final  static ObjectMapper objectMapper=new ObjectMapper();
    @Override
    public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response, AuthenticationException e) throws IOException, ServletException {
        //這里是可以拿到用戶對的登錄名的
        String username = request.getParameter("username");
        System.out.println(username);
        response.setContentType("application/json;charset=utf-8");
        String failureMessage = objectMapper.writeValueAsString(new JsonData(500, "登陸失敗"));
        response.getWriter().print(failureMessage);
    }
}

自定義的authentication-provider下面的user-service
定義一個類,這個實現(xiàn)類就是用于封裝數(shù)據(jù)庫里面的用戶的信息然后返回給springsecurity,它會比較從
表單穿過來的用戶名和密碼和數(shù)據(jù)庫查出來的用戶名和密碼進行比對,這里寫死,以后再加數(shù)據(jù)庫

public class MyUserDetailService implements UserDetailsService {
    @Override
    public UserDetails loadUserByUsername(String s) throws UsernameNotFoundException {
        //UserDetails:封裝用戶數(shù)據(jù)的接口,這里應(yīng)該是數(shù)據(jù)庫查詢出來的數(shù)據(jù),當(dāng)返回這個user對象時,springsecurity會把輸入的用戶名和密碼和這個對象里面的用戶名和密碼進行比對
        //成功則認(rèn)證通過,失敗則登陸失敗
        User user=new User("jojo","123456", AuthorityUtils.commaSeparatedStringToAuthorityList("ROLE_USER"));
        return user;
    }
}

創(chuàng)建這個目錄結(jié)構(gòu)

示范

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    商品添加頁面


商品添加頁面

其它頁面一樣
index.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    首頁


一下是網(wǎng)站的功能
商品添加
商品修改
商品查詢
商品刪除


login.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    登錄頁面


用戶名:
密 碼:

errorPage.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    自定義錯誤頁面


權(quán)限不足,請正確操作


controller

@Controller
public class MainController {
    /**
     *
     * @return登錄頁面
     */
    @RequestMapping("/userLogin")
    public String loginPage()
    {
        return "login";
    }

    /**
     *
     * @return登錄頁面
     */
    @RequestMapping("/error")
    public String errorPage()
    {
        return "errorPage";
    }
}
@Controller
@RequestMapping("product")
public class ProductController {


    /**
     * 商品添加
     */
    @RequestMapping("index")
    public String index()
    {
        return "index";
    }
    /**
     * 商品添加
     */
    @RequestMapping("add")
    public String add()
    {
        return "product/productAdd";
    }

    /**
     * 商品修改
     */
    @RequestMapping("update")
    public String update()
    {
        return "product/productUpdate";
    }
    /**
     * 商品列表
     */
    @RequestMapping("list")
    public String list()
    {
        return "product/productList";
    }
    /**
     * 商品刪除
     */
    @RequestMapping("delete")
    public String delete()
    {
        return "product/productDelete";
    }
}

創(chuàng)建一個返回給前臺的包裝類,用于返回code和message

public class JsonData {

    private Integer code;

    private String message;


    public JsonData() {
    }


    public JsonData(Integer code, String message) {
        this.code = code;
        this.message = message;
    }

    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/75711.html

相關(guān)文章

  • SpringSecurity系列01】初識SpringSecurity

    摘要:什么是是一個能夠為基于的企業(yè)應(yīng)用系統(tǒng)提供聲明式的安全訪問控制解決方案的安全框架。它來自于,那么它與整合開發(fā)有著天然的優(yōu)勢,目前與對應(yīng)的開源框架還有。通常大家在做一個后臺管理的系統(tǒng)的時候,應(yīng)該采用判斷用戶是否登錄。 ? 什么是SpringSecurity ? ? Spring Security是一個能夠為基于Spring的企業(yè)應(yīng)用系統(tǒng)提供聲明式的安全訪問控制解決方案的安全...

    elva 評論0 收藏0
  • SpringSecurity01(springSecurity執(zhí)行流程02)

    摘要:里面配置的過濾器鏈當(dāng)用戶使用表單請求時進入返回一個的實例一般是從數(shù)據(jù)庫中查詢出來的實例然后直接到最后一個如果有錯則拋錯給前面一個進行拋錯如果沒有錯則放行可以訪問對應(yīng)的資源上面是總的執(zhí)行流程下面單獨說一下的認(rèn)證流程這個圖應(yīng)該都看得懂和里面的配 showImg(https://segmentfault.com/img/bVbvO0O?w=1258&h=261);web.xml里面配置的過濾...

    Dr_Noooo 評論0 收藏0
  • springSecurity02(mybatis+springmvc+spring) 01

    摘要:建立一個模塊繼承上一個模塊然后添加依賴解決打包時找不到文件建立數(shù)據(jù)源文件數(shù)據(jù)庫連接相關(guān)修改配置數(shù)據(jù)源和整合,以及事務(wù)管理自動掃描掃描時跳過注解的類控制器掃描配置文件這里指向的是 1.建立一個模塊繼承上一個模塊然后添加依賴 junit junit 4.11 test ...

    FrancisSoung 評論0 收藏0
  • Spring4和SpringSecurity4整合(二)連接mybatis和mysql

    摘要:在上一篇基本配置了一些文件中,基本可以在文件中指定用戶名和密碼來進行實現(xiàn)的驗證,這次和一起來配合使用加入的配置文件別名在的中配置數(shù)據(jù)源查找配置事物然后建立層,和層以及對應(yīng)這里省略實 在上一篇基本配置了一些文件中,基本可以在文件中指定用戶名和密碼來進行實現(xiàn)SpringSecurity的驗證,這次和mynatis一起來配合使用 加入mybatis的配置文件: mybatis-config....

    NoraXie 評論0 收藏0
  • Spring4和SpringSecurity4整合(一)

    摘要:的官方文檔及其簡單,他的示例配置就是在文件中把用戶名和密碼寫固定了,然而在實際工作中是不可能的,參考了下網(wǎng)上的教程發(fā)現(xiàn)良莠不齊,特此寫下記錄學(xué)習(xí)過程首先導(dǎo)入包配置后面直接寫這里會提示出錯,提示找不 SpringSecurity的官方文檔及其簡單,他的示例配置就是在xml文件中把用戶名和密碼寫固定了,然而在實際工作中是不可能的,參考了下網(wǎng)上的教程發(fā)現(xiàn)良莠不齊,特此寫下記錄學(xué)習(xí)過程首先po...

    sorra 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<