当前位置: 首页 > news >正文

电子商务网站开发相关技术建设局属于什么单位

电子商务网站开发相关技术,建设局属于什么单位,网页设计师职业要求,怎么做网站站内搜索javaweb有两种方式读取资源文件 在Servlet中读取#xff0c;可以使用servletContext#xff0c;servletContext可以拿到web所有的资源文件#xff0c;然后随便读#xff0c;但是这种方法不常用#xff0c;尽量少在Servlet中读取资源文件 在普通Java类中#xff08;DAO中可以使用servletContextservletContext可以拿到web所有的资源文件然后随便读但是这种方法不常用尽量少在Servlet中读取资源文件 在普通Java类中DAO中使用类加载器来读  和 绝对路径来读取       类装载器可以访问的范围是classes文件夹下的文件   src文件夹下面的文件在发布之后都会在classes文件夹下也就是整个类加载器都可以通过类加载器来操作     1. 使用servletContext   软件开发中用作资源文件配置文件的文件类型有两种xml文件和properties文件  比如新建一个properties文件用作数据库的配置 urljdbc\:mysql\://localhost\:3006/test usernametest password123   然后在Servlet中读取文件 public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {InputStream instream this.getServletContext().getResourceAsStream(/WEB-INF/classes/db.propertites); Properties pro new Properties(); //mappro.load(instream);String url pro.getProperty(url);String username pro.getProperty(username);System.out.println(url);System.out.println(username);}   其中路径不能写成/src/db.propertites / 表示当前web程序 因为最终读取的是发布在服务器中的文件。都是在classes文件夹下面   对于properties文件的操作都可以使用properties这个类 这个类是把文件中的数据以map形式存储 有几行就会有几个元素   注意 我们在写Java的时候常用下面这种方式读取文件但是在javaweb中是不行的 public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {FileInputStream instream new FileInputStream(/WEB-INF/classes/db.propertites); Properties pro new Properties(); //mappro.load(instream);String url pro.getProperty(url);String username pro.getProperty(username);System.out.println(url);System.out.println(username);}   FileInputStream instream new FileInputStream(/WEB-INF/classes/db.propertites); 考虑清楚这个相对路径是相对谁的。 这句话是由服务器来调用服务器由Java虚拟机来运行所以这个是相对Java虚拟机的启动目录 Java虚拟机的目录是   我们启动服务器都是在C:\tomcat\bin目录下的startup.bat启动的时候同时启动虚拟机 所以是相对的是这个目录。。   所以在javaweb中读取文件用Servlet不能使用这种方式这种方式必须把文件放在Java虚拟机目录下   传统方式也不是不可行必须要知道文件的绝对路径  使用servletContext先得到文件在磁盘的绝对路径。 public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {String path this.getServletContext().getRealPath(/WEB-INF/classes/db.propertites)FileInputStream instream new FileInputStream(path); Properties pro new Properties(); //mappro.load(instream);String url pro.getProperty(url);String username pro.getProperty(username);System.out.println(url);System.out.println(username);}   这中方式可以得到该文件的名称。 因为有时间文件名称是客户机传过来的开发者需要知道 就需要截取path字符串了。 path.substring(path.lastIndexOf(\\) 1)    2. 使用类装载器 对数据库配置文件的读取一般是不放在servlet中的一般是放在DAO类中 这样才能把web层和数据层分开来   类装载器   Java虚拟机使用每一个类的第一件事情就是将该类的字节码装载近来装载类字节码的功能是由类装载器完成的类装载器负责根据一个类的名称来定位和生成类的字节码数据后返回给Java虚拟机。最常见的类装载器是将要加载的类名转换成一个.class文件名然后从文件系统中找到该文件并读取其中的内容这种类装载器也不是直接将.class文件中的内容原封不动地返回给Java虚拟机它需要将.class文件中的内容转换成Java虚拟机使用的类字节码。不管类装载器采用什么方式只要能够在内存中制造出给Java虚拟机调用类字节码即可所以把类装载器描述为类字节码的制造器更容易让人理解。    public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {userDAO dao new userDAO();dao.update();}     public class userDAO {public void update() throws IOException {InputStream instream userDAO.class.getClassLoader().getResourceAsStream(db.propertites); Properties pro new Properties(); //mappro.load(instream);String url pro.getProperty(url);String username pro.getProperty(username);System.out.println(url);System.out.println(username);}}     其中userDAO.class.getClassLoader 得到类装载器   因为他们都是在Classes文件夹下面所以可以访问到该文件   由于对数据库的操作方法有很多不能每个方法里面都写这种所以可以使用静态代码块的方式。 public class userDAO {private static Properties dbconfig new Properties();static{try {InputStream instream userDAO.class.getClassLoader().getResourceAsStream(db.propertites);dbconfig.load(instream);} catch (Exception e) {throw new ExceptionInInitializerError(e);}}public void update() throws IOException { System.out.println(dbconfig.getProperty(url)); }public void find() throws IOException { }public void delete() throws IOException { }}    使用类装载器读取文件的弊端 1.文件不能太大因为它是以装载类的方式一次性加入内存中 2.类装载器只会加载一次就是说不能显示文件的更新操作   3.使用绝对路径读取 如果需要读到实时数据就不能通过类装载器来读文件需要通过普通的文件路径的方式 还是要通过类装载的方式来得到文件的位置 public class DAO {public void update() throws IOException{String path DAO.class.getClassLoader().getResource(db.properties).getPath();FileInputStream in new FileInputStream(path);Properties pros new Properties();pros.load(in);String url pros.getProperty(url); }}      转载于:https://www.cnblogs.com/tech-bird/p/3843832.html
http://www.sadfv.cn/news/142253/

相关文章:

  • 做网站的问题做视频网站要多大的主机
  • 网站的建设流程图企业产品微网站收费吗
  • 沈阳市住房和城乡建设局网站首页网页制作个人简历的代码
  • 网站权重分析WordPress Grace8.2主题
  • 不备案怎么做网站软文网站大全
  • 织梦网站备份几种方法广东深圳招聘信息最新招聘2022
  • 网站设计招标评标标准及办法番禺响应式网站开发
  • 建站行业前景湖北省城乡建设厅网站
  • 邢台网站制作地方wordpress 爱奇艺插件下载
  • 温州人才网站开发wordpress模板文件在哪里
  • 做网站客户最关心的是什么设计公司企业愿景
  • 教学网站模板网页设计公司宣传事例
  • 房产网站开发网站建设公司用5g
  • 域名更换网站新洲城乡建设局网站
  • wordpress主动推送到Google长沙seo网站优化公司
  • 网站做常规优化网站与公众号的区别
  • 网站主题网可信赖的顺的网站建设
  • 网站域名备案注销网站建设前
  • 重庆最便宜的网站建设公司世界杯网页设计素材
  • 临漳网站建设网线制作步骤图片
  • 青岛做公司网站注册的多吗手机网站开发学习
  • 搭配服装网站源码网站设计的硬件
  • WordPress网站关闭插件长沙市云网站建设
  • 公司做零申报在哪个网站上域名购买渠道
  • 小网站备案企业信息免费查询系统
  • 网站快速排名优化价格珠海室内设计学校
  • 自己做的网站怎么在百度可以查到重庆seo顾问
  • 做网站需要什么东西网页源代码模板
  • 我做的网站怎样推广网站建设的基本技术步骤
  • 营销网站开发系统为什么公司要做网站