es sql怎么什么都不支持_绝对路径

*- eclipse2019版本一开始新建Web项目时,在WebContent文件包中创建JSP文件报错;

es sql怎么什么都不支持_es sql怎么什么都不支持_02


解:未导入servlet容器类库,下载tomcat并将里面的servlet.jar导入进来

es sql怎么什么都不支持_服务器_03

  • ** 如何集成eclipse和tomcat**

es sql怎么什么都不支持_重定向_04

  • eclipse如何与数据库相连接?

解:先导入jdbc包,放在项目的WEB-INF里的lib里

es sql怎么什么都不支持_绝对路径_05

  • ** 使用SQL语句时浏览器显示“对象名无效”**

解:dbo表示每个数据库的默认用户,具有所有者权限

es sql怎么什么都不支持_重定向_06

  • ResultSet对象的游标移动

解:要使用resultset的这个方法,首先在得到这个resultset的时候必须把statement声明成为scrollable,例如:
Statement stmt = connection.Statement(sql, para1, para2);
其中para1和para2可以使用ResultSet类中的常量。

  • 关于JSP中的errorpage属性使用时500错误的问题(在IE浏览器,而chrome不会报错)
    解:由于IE5以后的错误处理机制发生变化
    1)在exception.jsp(就是写有isErrorPage的)中添加:<% response.setStatus(200); %>
    或者response.setStatus(HttpServletResponse.SC_OK);
    2)在IE浏览器里设置,IE浏览器–右上角的设置–Internet选项—高级—把滚动条拉到最下面,把 显示http友好错误信息 取消选中。
    设置响应的状态码。这个方法被用于当响应结果正常时(例如,状态码为SC_OK或SC_MOVED_TEMPORARTLY)设置响应状态码。如果发生错误,而且来访者希望调用在web应用中定义的错误页面作为显示,那么应该使用sendError方法代替之。使用setStatus方法之后,容器会清空缓冲并设置Location响应头,保留cookies和其他响应头信息。

- JSP正常插入HTML的图片标签,图片显示不出来
解:1)对tomcat配置(自行百度)
2)使用相对路径,图片文件夹和JSP文件在同一级
可参考:https://zhidao.baidu.com/question/96634139.htmlhttps://zhidao.baidu.com/question/96634139.html

  • -GET与POST请求区别

在浏览器输入一个网址访问网站链接访问网站是GET请求;
FORM表单中,可以通过设置Method指定提交方式为GET或者POST提交方式,默认为GET提交方式
GET请求,请求的数据会附加在URL之后,以?分割URL和传输数据,多个参数用&连接。URL的编码格式采用的是ASCII编码,而不是uniclde,即是说所有的非ASCII字符都要编码之后再传输。

POST请求:POST请求会把请求的数据放置在HTTP请求包的包体中。POST的安全性比GET的高

es sql怎么什么都不支持_绝对路径_07

  • -设置了setCharacterEncoding(“UTF-8”),还是中文乱码

es sql怎么什么都不支持_服务器_08


解:由于POST传来数据,Tomcat默认以ISO-8859-1编码成单字节数据,若没有进行请求编码设置或重新编码操作,那么中文字符会在jsp页面中输出???,出现类似多个?形式的乱码现象;

若已获取请求参数,此时还没有设置过编码,Tomcat会设置默认Post请求参数编码为ISO8859_1,那么你再设置成UTF-8也无效了,还是ISO-8859-1

解决·:1.改为get请求

2.下图,先解码在编码

es sql怎么什么都不支持_es sql怎么什么都不支持_09

  • -新建的Web项目没有web.xml

解:因为刚创建时有个选项,问你要不要自带创建web.xml,没有打勾。当然后面也可以自己创建:在创建的项目上右键:–> Java EE Tools --> Generate Deployment Descriptor Stub

  • - 简单的Servlet报错405

es sql怎么什么都不支持_服务器_10

  • 解:在我们正常实现的时候,不应该调用super.xxx()方法,而是重新去实现这些方法,就ok了。
    参见:
  • - Eclipse中没有找不到build path

解:如果Project Explorer右键没有build path。点击Window ->show view 选择package explorer

  • - Servlet3.0基本不会像MyEclipse自动更新web.xml,但是有个新特性:注解

es sql怎么什么都不支持_重定向_11


es sql怎么什么都不支持_服务器_12


3.0新特性参见:


  • - Serlvet 初始化参数时servlet抛出空指针异常

es sql怎么什么都不支持_es sql怎么什么都不支持_13


解:在初始init方法中添加一行

es sql怎么什么都不支持_服务器_14

  • JS中type=submit按钮如何先js判断条件在跳转action
  • es sql怎么什么都不支持_服务器_15

  • - 上下文 Context是什么东东?

简单理解是类似文章上下文,你理解文字所描述的语境,有了语境才知道什么意思。
例如:一个人在街上发出“哈哈哈哈”的声音,
你会以为什么?他是神经病?
而其实上文提到是他的狗丢了,而他的狗叫哈哈。
在程序里,例如:一个软件点击按钮跳转另一个新界面,要保存你从哪个界面跳过来的信息等,保证可以跳回;
在Servlet里,ServletContext是servlet上下文的实例对象
看到一种说法是:在一个web容器中,它是一个全局的储存信息的空间,是容器级别的概念(不同于session),当web容器启动时,会为每一个WEB应用程序(webapps下的根目录就是一个应用程序)创建一块共享的存储区域。

参见:

  • - 请求转发与响应重定向中路径参数区别(相对路径与绝对路径区别)

重定向
在web应用下,发出一个response,告诉浏览器重新发出一次请求,去请求一个新的地址,此时的地址栏中会发生变化。重定向是浏览器在做!

例如:项目名team,有com包以及test.jsp、show.jsp(同一级)。
现在请求访问的URL地址:http://localhost:8080/Ch1_Servlet/test.jsp

response.sendRedirect("show.jsp");
//相对路径
//容器相对于原来请求URL的目录加参数来生成完整的URL
//http://localhost:8080/Ch1_Servlet/show.jsp
response.sendRedirect("/show.jsp");
//绝对路径
//容器相对于Web应用本身加参数建立完整的URL,这是因为 重定向response.sendRedirect("")
//是服务器向客户端发送一个请求头信息,由客户端再请求一次服务器,请求是在服务器外进行的.
//http://localhost:8080/show.jsp

请求转发
在web应用下,是服务器主动的转发一个请求,这个请求从头到尾只有一个,并没有让浏览器重新发出一个请求,此时的地址栏中不会发生变化。转发是服务器在做!

request.getRequestDispatcher("show.jsp");
//相对路径
//与response一样
request.getRequestDispatcher("/show.jsp");
//绝对路径与Servlet重定向不同,容器将相对于**Web应用的根目录**加参数生成完整的URL(即“/”根路径就是相对于虚拟路径)
//这是因为转发是在服务器内部进行的,写绝对路径/开头指的是当前的Web应用程序
//http://localhost:8080/Ch1_Servlet/show.jsp

关于“/”
1、重定向的 / 表示:http://服务器ip:端口/
2、请求转发的 / 表示:http://服务器ip:端口/项目名

【重定向是浏览器做,只知道发给哪个服务器,不知道具体是服务器的哪个project。
转发是服务器做,是服务器某个project内部的转发】

具体参见:

String path=pageContext.request.contextPath();
//jsp取绝对路径的方法,相当于"/项目名"

假定你的web application 名称为news,你在浏览器中输入请求路径:
http://localhost:8080/news/main/list.jsp

System.out.println(request.getContextPath());
//打印结果:/news
System.out.println(request.getServletPath());
//打印结果:/main/list.jsp
 System.out.println(request.getRequestURI());
//打印结果:/news/main/list.jsp
 System.out.println(request.getRealPath("/"));
 //打印结果:F:\Tomcat 6.0\webapps\news\test
  • - Servlet的转发和重定位

实现转发调用的是HttpServletRequest对象中的方法,转发时浏览器中的url地址不会发生改变,
转发时浏览器只请求一次服务器
转发能使用request带数据到跳转的页面

//。。。。。
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            //通过转发带数据
            req.setAttribute("name","张三");
            //服务器内部跳转
            //这里的斜线表示项目的根目录
            req.getRequestDispatcher("/send.jsp").forward(req,resp);
    }

实现重定向调用的是HttpServletResponse对象中的方法,重定向时浏览器中的url地址会发生改变,重定向时浏览器请求两次服务器
重定向能使用ServletContext带数据到跳转的页面

protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { 
            //通过重定向带数据
        ServletContext servletContext = this.getServletContext();
        //放入上下文对象里
       servletContext.setAttribute("name","王二");
            resp.sendRedirect("/send2.jsp");

es sql怎么什么都不支持_es sql怎么什么都不支持_16

  • -【处处坑~~】创建监听器就报了一堆错:inside the host appBase has been specified, and will be ignored…

解:1.点开tomcat

es sql怎么什么都不支持_绝对路径_17


2.还报错就往下操作…

在你的tomcat文件夹里应该会有backup文件夹,看到这个就删掉他!!

然后再conf–》Catalina–》localhost文件夹内里面的东西删除!!

参见:

  • - Java项目报 Error configuring application listener of…错误

es sql怎么什么都不支持_es sql怎么什么都不支持_18


参见:

【3.14更新】