可以。windows下tomcat发布多个web项目多个域名,同一ip,有项目,需要在同一个Tomcat服务器上,所以是可以部署多个应用名称,这样就是一个IP地址对应不同的web项目。web项目是指后台采用Java语言SSH架构。
Intellij Idea 创建标准的web项目是不会错的,Intellij Idea 可以创建maven web 和直接的web
1、创建一个项目File -> New Project -> 输入项目名称“Demos” ,
选择Project SDK为17 -> Next -> Finish
2、创建一个Module
鼠标点中项目名称demos -> 右键选择New,选择Module
输入Module名称“firstweb” -> 点击Next
勾选“Web Application” -> 确认已勾选“Create webxml” -> Finish
3、创建好的web项目
4、在web/WEB-INF下创建两个文件夹:classes和lib
classes用来存放编译后输出的class文件,lib用于存放第三方jar包。
5、配置文件夹路径
File -> Project Structure (快捷键:Ctrl + Shift + Alt + S) -> 选择Module :
选择 Paths -> 选择"Use module compile output path" ->
将Output path和Test output path都选择刚刚创建的classes文件夹。
接着选择Dependencies -> 将Module SDK选择为17 -> 点击右边的“+”号 -> 选择1 “Jars or Directories”
-> 选择刚刚创建的lib文件夹 -> 选择“jar directory” -> 接着返回一路OK就行了~~
然后配置tomcat
java获取根路径有两种方式:
1)在servlet可以用一下方法取得:
requestgetRealPath(“/”)
例如:filepach = requestgetRealPath(“/”)+”//upload//”;
2)不从jsp,或servlet中获取,只从普通java类中获取:
String path = getClass()getProtectionDomain()getCodeSource()getLocation()getPath();
SAXReader() saxReader = new SAXReader();
if(pathindexOf(“WEB-INF”)>0){
path = pathsubstring(0,pathindexOf(“/WEB-INF/classes”)+16);
// ‘/WEB-INF/classes’为16位
document = saxReaderread(path+filename);
}else{
document = saxReaderread(getClass()getResourceAsStream(filename));
}
你说的这个MyWeb是你的Web项目的Context Path,就是web“上下文地址”,应该设置成动态的,即用代码生成的,例如用JSP的scriptlet获取:
<% String path = requestgetContextPath(); %>或者用EL表达式也能获取:
${pageContextrequestcontextPath}这样,你在代码里应该这样用:
<a href="<%= path%>/login" > 或 <a href ="${pageContextrequestcontextPath}/login">webxml里无需修改,如果想修改整个项目在tomcat下的context path,在Eclipse下对项目属性做修改即可,可以设置为根路径。
还有一种直接在tomcat的配置里修改的方法(即脱离Eclipse环境时),修改tomcat目录下conf/Contextxml,如下:
<Context path="/MyWeb" docBase="path/to/your/webapp" reloadable="true"/>上面的path属性就是web context path了,可以自由设置。
<script src="/////scripts/js></script>
除了如上边那种用多个父路径外还有没有别的方法直接获取项目跟路径。获取项目根目录
在jsp里去<%=requestgetContextPath()%>这就是项目的根路径了,是到项目这层的。
js的引入方法如下:
<script src="<%=requestgetContextPath() %> /home/testjs"></script>
css的引入方法:
<link href="<%=requestgetContextPath() %>/css/onecss" rel="stylesheet" type="text/css">。/js获取项目根路径,如: >
getRootPath:function () {
//获取当前网址,如: >
var cur>
//获取主机地址之后的目录,如: /ems/Pages/Basic/Personjsp
var pathName = windowdocumentlocationpathname;
var pos = cur>
//获取主机地址,如: >
var localhostPath = cur>
//获取带"/"的项目名,如:/ems
var projectName = pathNamesubstring(0, pathNamesubstr(1)indexOf('/') + 1);
return(localhostPath + projectName);
以上就是关于web项目能配置多个应用名称吗全部的内容,包括:web项目能配置多个应用名称吗、Intellij idea 创建web项目的时候目录是Web而不是WebRoot、java怎么取到web服务的根路径等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)