java:maven中webapp下的jsp不能访问web-inf下面的bean

当然 WEB-INF下面的文件是不能访问的,只能吧jsp文件放入到WEB-INF下面,然后通过配置WEB-INF下web.xml进行配置。

     Java小项目中WEB-INF下jsp页面如何访问?

一:一般为啥要把jsp页面放在WEB-INF呐?

     这样主要是为了网站的安全的角度来说的,WEB-INF是安全目录Tomcat 默认的访问路径是WebRoot下的index.jsp,放在WEB-INF下的页面一般不配置是无法访问的。

你的站点肯定有些页面是需要经过登录验证或其他验证后才能访问的啊,这些页面就放在web-inf里。
如果是能不经过验证就访问的页面,比如主页、登录页、欢迎页这种,就不要放在web-inf里

二: 下面来看如何访问Web-INF下的页面?

     在创建JavaWeb工程时有个web.xml的部署描述符,在下面有个这样可以定制首页的:做如下配置来看:

<welcome-file-list>
    <welcome-file>/WEB-INF/jsp/test.jsp</welcome-file>
  </welcome-file-list>
</web-app>

一般的Web.xml中默认的<welcome-file>中的页面是WebRoot下的index.jsp的

工程目录如下:


 便可以访问了:

在浏览器中输入如下地址

访问访问成功后的页面:


在SpringMVC的视图解析器中也是配置的WEB-INF下的页面;

    最后追加的一句:使用如下的地址也是访问不到的:

http://localhost:8080/JSTLTest/WebRoot/WEB-INF/jsp/test.jsp

                            来看具体的案例:SSM整合实现用户登录的例子中对WEN-INF下的页面的访问实现:开发环境MyEclipse 2016 CI 7

    1:

这个是基于Maven 下的SSM亏框架的整合:实现的功能是用户登录:

来看web.xml中的写法:

<welcome-file-list>
     <welcome-file>/WEB-INF/jsp/main.jsp</welcome-file>
  </welcome-file-list>

 来看如何访问这个小Demo:

      浏览器中的地址的写法:

http://localhost:8080/TestSSM/

这样就访问成功页面了,用Maven创建项目的时候使用web-app的项目名称上会多出Maven Webapp的访问的时候不用加的,只用你项目的名称即可;

                                下面来看WEB-INF下的JSP页面如何实现跳转的(用a标签实现跳转)

1:一般来说将JSP页面放在Webapp下就比较容易实现了,加项目的路径就可以了或者是添加<%=basePath>绝对路径就可以了;

2:这里使用SpringMVC的控制器实现:

首先是之前的定制首页中可以用控制器实现的:

首先新建一个Controller类

@Controller
public class PageController {
     //打来首页,可以取代web.中定义首页的
     //这个只是一个视图,模型数据可以在形参里面来表示的

//这里是访问的根路径

@RequestMapping(value="/",method=RequestMethod.GET)
    public String showLogin(){
      System.out.println("进入页面控制器啦");    
      return "login";    
    }
    //页面跳转的控制器
    @RequestMapping("/upload")
    public String showUpload(){
      System.out.println("进入跳转页面控制器");
      return "upload";
    }
}
这个就可以不用写的:

 <welcome-file-list>
    <welcome-file>/WEB-INF/jsp/test.jsp</welcome-file>
  </welcome-file-list>
</web-app>
 

  这样部署项目启动服务器就可以访问了;

http://localhost:8080/TestSSM   就可以访问了

来看跳转的:main.jsp位于WEB-INF下,upload.jsp位于WEB-INF下

   1:

       <!-- 配置跳转页面控制器 -->
      <a href="upload">上传文件</a> 

    2:页面控制器里面写:

       @RequestMapping("/upload")
    public String showUpload(){
      System.out.println("进入跳转页面控制器");
      return "upload";
    }             

   之前那个视图解析器是这样配置的:

<!--配置视图解析器 -->
        <bean     class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/jsp/" />
        <property name="suffix" value=".jsp" />
        </bean>         

http://blog.csdn.net/hcjsjqjssm/article/details/61615520

java:maven中webapp下的jsp不能访问web-inf下面的bean的更多相关文章

  1. maven中解决javax.servlet.jsp.PageContext cannot be resolved to a type

    在eclipse环境下用maven出现:javax.servlet.jsp.PageContext cannot be resolved to a type. 这是由于没有引入jsp-api引发的问题 ...

  2. 关于jsp web项目,jsp页面与servlet数据不同步的解决办法(报错404、405等)即访问.jsp和访问web.xml中注册的/servlet/的区别

    报错信息: Type Status Report Message HTTP method GET is not supported by this URL Description The method ...

  3. JVM虚拟机-了解Java堆中对象分配、布局和访问的全过程

    目录 前言 对象的创建 类加载检查 分配内存 内存空间分配方式 指针碰撞 空闲列表 并发时的内存分配 同步处理:CAS 本地线程分配缓冲:TLAB 初始化零值 设置对象头 执行 init 方法 对象的 ...

  4. Maven新建webapp项目index.jsp报错

    最近用eclipse新建了一个maven项目,结果刚新建完成index.jsp页面就报错了,先把错误信息贴出来看看 后来就找资料,结果发现两种解决办法,希望可以帮助用得上的人! 第一种:直接在pom. ...

  5. maven中添加servlet、jsp依赖

    或者在eclipse中,右键项目名称->Maven->Add Dependency->输入servlet,会自动找到最新的版本(记得联网哦),如图:

  6. Java项目中,如何限制每个用户访问接口的次数

    转自:https://blog.csdn.net/qq_30947533/article/details/78844709 方法1:数据访问量大的话 用redis来做,用户在调用短信接口时,先根据用户 ...

  7. IDEA、maven创建webapp项目

      maven官方入门指南:http://maven.apache.org/guides/getting-started/index.html 推荐跟着官方文档学习噢~   IDEA.maven创建w ...

  8. Myeclipse中导入项目后java类中汉字注释出现乱码问题(已解决)

    今天重装系统,安装了新的Myeclipse后,导入之前的项目后,,出现了乱码问题.乱码问题主要是java类中的注释,而jsp页面中汉字却完好如初: 右键项目,查看项目的编码格式,UTF-8,把java ...

  9. 关于JAVA EE项目在WEB-INF目录下的jsp页面如何访问WebRoot中的CSS和JS文件

    找了这么久资料,总算解决了 感谢博客园:http://www.cnblogs.com/xsht/p/5275081.html 感谢百度:http://zhidao.baidu.com/link?url ...

随机推荐

  1. oracle高性能的SQL语句的写法

    1.当多表查询的时候,把数据量小的表放在最后面,ORACLE会把最后面的表当作基础表,因为表间连接时,最右边的表会被放到嵌套循环的最外层.最外层的循环次数越少,效率越高. 2.Oracle采用自下而上 ...

  2. LayoutInflater这个类还是非常有用的,它的作用类似于findViewById()。 但他是找XML文件并实例化

    在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById().不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例 ...

  3. openwrt修改密码

    默认情况下root是没有密码的 需要设置密码后才能开启ssh 修改/etc/shadow文件: root:$1$wEehtjxj$YBu4quNfVUjzfv8p/PBo5.:0:0:99999:7: ...

  4. 云中应用性能管理(APM)的下一步

    Michael Kopp是Compu-ware公司卓越APM中心的一名技术分析师,他做过10多年的Java/JEE领域的设计师和开发员.另外,Kopp还专攻虚拟和云的大规模生产部署的结构和性能. ? ...

  5. 很全的php数组操作方法

    一.数组操作的基本函数 数组的键名和值 array_values($arr);获得数组的值 array_keys($arr);获得数组的键名 array_flip($arr);数组中的值与键名互换(如 ...

  6. mysql主从:主键冲突问题

    1.检查从库 show slave status \G; Slave_IO_Running: YesSlave_SQL_Running: No 2.出现类似如下的报错: Last_SQL_Error: ...

  7. 【JavaScript】BOM和DOM

    在第一篇JavaScript视频总结博客中.是对JavaScript做了一个宏观的认识.当中,不知道大家可否还记得.JavaScript的核心部分包含哪些? JavaScript的核心部分主要包含三个 ...

  8. Jmeter 04 JMeter 负载与监听

    1. 场景设计 2. 场景设置 3. JMeter性能参数配置 4. 测试监听

  9. Eureka集群搭建

    服务注册.发现是微服务架构的关键原理之一,由于微服务架构是由一系列职责单一的细粒度服务构成的网状结构,服务之间通过轻量机制进行通信,这就必然引入一个服务注册发现的问题,也就是说服务提供方要注册报告服务 ...

  10. Module 'curl' already loaded in Unknown on line 0

    Module 'curl' already loaded in Unknown on line 0 应该是php binary已经包含curl,你又动态加载了一遍.屏蔽掉你的extension 引用, ...