Jsp页面 img标签 src属性为项目外的路径,如何获取!

图片存储在 tomcat 的temp文件下

1.配置tomcat 本地路径映射
在这里插入图片描述
docbase : 本地路径
path: temp (相当于 http://localhose:8080/temp)

  1. jsp页面
<img src=" http://localhose:8080/temp/photo.jpg">
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
超市管理系统: 1.数据库设计: smbms_user 超市的工作人员 每个工作人员都有角色 smbms_role 人员的角色 3种: 系统管理员: 经理 : 普通员工: smbms_bill 超市账单 账单属于某个供应商 smbms_provider 供应商 2.项目框架设计: myeclipse+mysql+java web(servlet|jsp) 3.开发模式: MVC开发模式 注意: (1)创建项目与数据库时,采用UTF-8的编码. EncodingFilter (2)项目搭建 smbms src source folder com.hfxt.entity com.hfxt.controller UserServlet ProviderServlet BillServlet ... com.hfxt.filter com.hfxt.listener com.hfxt.service com.hfxt.service.impl com.hfxt.dao com.hfxt.dao.impl com.hfxt.util ... resources source folder db.properties test source folder WebRoot/ commom/存放公共页面 css/ img/ js/ /WEB-INF/admin(存放jsp) (3)jsp:建议放在WEB-INF下 html-》jsp:后缀名+page头部声明 jsp中的资源引用: 绝对路径: ①${pageContext.request.contextPath }/css/style.css 或者 ②<%=request.getContextPath()%> ③<c:set var="path" value="${pageContext.request.contextPath }"/> 可以使用${path}来获取 相对路径时相对于url(不建议) 统一: /admin/user/* /admin/provider/* ... <filter-mapping> <url-pattern>/admin/*</url-pattern> <> 如何处理登录问题? ①方式1 login.jsp放在WEB-INF /admin/user/toLogin->login.jsp /admin/user/login->点击登录时的处理 在过滤器中,if(url.indexOf("/toLogin") != -1 ||...){ //放行 chain.doFilter(request,response); return; } ②方式2 单独放置登录页面 login.html login.jsp 4.项目周期 1周时间 项目答辩时间: 5.项目分析: (1)登录功能: ①根据用户名查询数据库, 将用户输入的密码加密, 与数据库查询出的密码进行比对. 加密方法: String p2 = Base64.encode(p.getBytes() );//Base64方式加密 或者 String password = DigestUtils.md5Hex(value);//MD5方式加密 ②登录 public User login(String us,String ps){} public String login(String username){ //根据username查询密码p1 | 根据p1和输入的密码p1比较 | ------------------- |后台 | 相等,登录 否则,登录失败 } (2)控制器使用Servlet分发请求控制,实现一个Servlet处理多个请求 (3)根据用户角色id,来判断是否显示哪些管理模块, 或者是否显示删除、增加和修改图标 (4)页面提取: 首页等页面的头部,左侧导航,底部 等都可以单独的提取到JSP中. 在源页面上进行引用. <%@include file=""%> <jsp:include page="">等 (百度搜索iframe的使用) (5)账单,供应商,用户查询列表带分页。 该分页查询还需带条件。 条件查询: 支持模糊查询。 条件在查询之后, 要继续回显到页面上。 (6)供应商下拉列表: 1.在准备跳转目标页面的servlet中,查询所有供应商信息. 传到页面上 2.在JSP页面上, 拿到传递来的供应商信息.动态展示在下拉列表中. (7)账单,供应商,用户新增修改时: 1.页面必须有JS客户端验证. 2.Servlet服务端获取页面参数时,必须要有服务端验证. 例如判空 3.新增的成功失败给出提示. 4.用户新增时,注意界面使用的日期控件.和新增前,密码加密存储. (8)用户查询: 管理员可以查看所有用户列表. 经理与普通用户只能查看自身信息,没有权限查看所有用户,无需显示用户列表,值显示自己信息即可。 (9)账单,供应商,用户修改功能: 主键编号等不让改.修改页面依然需要JS验证. 服务端验证. 修改成功,失败给出提示. 用户修改: 权限修改. 只提供给管理员,用来修改普通用户与经理. (10)账单,供应商,用户删除功能: 需要弹窗提示.也可以自己编写界面 确认删除之后,成功失败给出提示. 供应商删除: 检查当有所属未支付账单时,给出提示,不允许删除.如果没有,则删除该供应商的所有账单 用户删除: 不允许删除自身. (11)密码修改功能: 1.修改密码页面,必须有JS验证.服务端验证. 2.旧密码必须与当前登录账号的密码相同. 3.新密码修改时,加密存储. 4.修改密码失败,在当前页面给出提示.修改成功,提示请重新登录,自动退出并跳往登录页,保证session失效 (12)访问权限控制: 1.增加过滤器. 登录页面可直接访问. 如果访问不是登录地址,则根据session判断是否登录. 如果已经登录,核心页面直接显示; 如果没有登录,跳转到登录页面; 如果已经登录,访问登录页面,跳转到核心页面 (13)错误页配置: 1.编写错误页. 2. 在web.xml中配置: <error-page> <error-code>404</error-code> <location>/404Error.jsp</location> </error-page> <error-page> <error-code>500</error-code> <location>/500Error.jsp</location> </error-page>
<%@ page language="java" contentType="text/html; charset=gbk"%> <%@ page pageEncoding="gbk"%> <%@ page import="com.jspsmart.upload.*" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gbk"> <title>Insert title here</title> </head> <body> <form action="upd2.jsp" method="post" enctype="multipart/form-data" name="form1"> <input type="file" name="file1"> <input type="text" name="title"> <input type="text" name="content"> <input type="submit" value="上传" > </form> </body> </html> 接受上传文件:okUpload.jsp 接受图片改变名称保存到指定目录并在网页上发布 接受参数值并显示在图片下面 <%@ page language="java" contentType="text/html; charset=gbk"%> <%@ page pageEncoding="gbk"%> <%@ page import="com.jspsmart.upload.*" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gbk"> <title>上传处理</title> </head> <body> <% SmartUpload su=new SmartUpload(); //初始化 su.initialize(pageContext); //上传 su.upload(); // 设置保存信息 String dir="upload"; //获取上传文件列表集合 Files files=su.getFiles(); for(int i=0;i<files.getCount();i++){ File file=files.getFile(i); //判断上传的是不是文件 if(!file.isMissing()){ //将获取的图片另存为文件名为new,后缀名从原是文件中获得 file.saveAs(dir+"/new."+file.getFileExt(),su.SAVE_VIRTUAL); //获取图片的客户端路径名 String name1=file.getFilePathName(); out.print("客户机原始路径名: "); out.print(name1); out.print("<br>"); out.print("服务器上的相对路径名: "); //构造服务器上的相对路径名 String name2=dir+"/"+"new.jpg"; out.print(name2); out.print("<br>"); %> <!-- 将上传后的图片发布 --> <img src="<%=name2 %>"> <% } } %> <!-- 获取传过来的非文件参数值 --> <%=su.getRequest().getParameter("title") %> <br> <%=su.getRequest().getParameter("content") %> <br> <br> </body> </html>
如果在Spring Boot项目JSP页面中无法加载`src/main/resources/static/images`文件夹中的图片,可能是因为`/static`路径未被正确地配置为静态资源路径。 你可以按照以下步骤来解决这个问题: 1. 在Spring Boot应用程序的主类(通常是带有`@SpringBootApplication`注解的类)中添加`WebMvcConfigurer`的bean定义。这将允许你自定义静态资源配置。 ```java import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.Bean; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; @SpringBootApplication public class YourApplication { public static void main(String[] args) { SpringApplication.run(YourApplication.class, args); } @Bean public WebMvcConfigurer webMvcConfigurer() { return new WebMvcConfigurer() { @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/static/**") .addResourceLocations("classpath:/static/"); } }; } } ``` 2. 确保JSP页面中的图片路径以`/static`开头。修改JSP页面中的`<img>`标签如下: ```jsp <img src="/static/images/example.jpg" alt="Example Image"> ``` 3. 重新运行Spring Boot应用程序,然后再次访问JSP页面,查看是否能够正常加载图片。 通过以上步骤,将`/static`路径配置为静态资源路径,可以确保JSP页面能够正确加载`src/main/resources/static`文件夹中的图片。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值