你们让我起个名啊 2017-07-18 06:18 采纳率: 42.3%
浏览 7072

关于springmvc中@RequestMapping访问时404的问题

运行时没有报错;
部分配置文件

     <bean id="multipartResolver"  
        class="org.springframework.web.multipart.commons.CommonsMultipartResolver">  
        <!-- 默认编码 -->
        <property name="defaultEncoding" value="utf-8" />  
        <!-- 文件大小最大值 -->
        <property name="maxUploadSize" value="10485760000" />  
        <!-- 内存中的最大值 -->
        <property name="maxInMemorySize" value="40960" />  
    </bean> 

    <mvc:annotation-driven/>

    <context:annotation-config/>

     <mvc:resources location="/static/" mapping="/static/**"></mvc:resources>  

Controller部分代码

@RequestMapping("/sysuser")
public class SystemController extends BaseController {

    private final Logger log= LoggerFactory.getLogger(SystemController.class);

    @Resource
    private UserService userService;

    @RequestMapping(value = "/login",method = {RequestMethod.POST,RequestMethod.GET})
        public void login(User user,boolean rememberMe) throws IOException{
        result.setSuccess(false);
        //用户登录
        User userInfo = userService.getByProerties(new String[]{"loginAccount"}, new String[]{user.getName()},null);
        if(userInfo==null){
            result.setMessage("用户名错误");
            super.writeJSON(result);
            return;
        }
        if(!userInfo.getName().equals(new Sha256Hash(user.getPassword()).toHex())){
            result.setMessage("密码错误");
            super.writeJSON(result);
            return;
        }
        //存入session
        Subject subject = SecurityUtils.getSubject();
        //记得传入明文密码
        subject.login(new UsernamePasswordToken(userInfo.getName(), user.getPassword(), rememberMe));
        session.setAttribute(USER_SESSION, userInfo);
        result.setMessage("登录成功");
        result.setSuccess(true);
        super.writeJSON(result);
    }


前端js部分代码

        submitHandler:function(form){
            $.ajax({
                dataType : "json",
                url : "${contextPath }/sysuser/login",  
                type : "post", 
                data : $("#login_form").serialize(), 
                success : function(data) {
                    $.alert(data.message);
                    if(data.success){
                        window.location.href = 'page/main';
                    }
                },
                error : function (e){
                    var d = e.responseJSON;
                    if(d){
                        $.alert(d.message);
                    }
                }
            });
            return false; //阻止form提交
        }



<servlet>
    <servlet-name>SpringMVC</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath*:/WEB-INF/applicationContext-mvc.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
    <async-supported>true</async-supported>
</servlet>
   <servlet-mapping>
    <servlet-name>SpringMVC</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>


发布项目点击登陆后会报
404

http://127.0.0.1:8080/.../sysuser/login

  • 写回答

4条回答

  • zsensei 2017-07-18 06:35
    关注

    你在你的控制器,就是 SystemController 上加上 @Controller 这个注解再试试

    评论

报告相同问题?

悬赏问题

  • ¥15 matlab有关常微分方程的问题求解决
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable