一、Weblogic安装开始:
1.1 weblogic 的下载地址:
weblogic8.1 + sp2 中文版:http://www.9iv.com/down/down.asp?id=855&no=3
weblogic8.1 + sp4 中文版:http://download2.bea.com/pub/platform/81/platform814_zh_CN_win32.exe
1.2 weblogic的傻瓜似安装:
点击开始安装后,漫长的解压之后,开始出现安装界面,结合我的情况,设定bea主目录为d:/bea,其它都取默认值,一路next,BEA_installer会帮你全盘搞定, 完毕后,点击完成结束。
安装完成后,就可以开始着手部署J2EE项目了。
二、开始部署J2EE web项目:
Web项目的部署采用Configuration Wizard工具。依次点击“开始”->“BEA WebLogic Platform
8.1”->“Configuration Wizard”,启动”BEA WebLogic Configuration Wizard”。
2.1 新建weblogic domain
选择”新建weblogic配置”,
然后”下一步”,在”模板”选择”base weblogic server domain”,
然后”下一步”,没有特别的需要就不修改默认选择,然后”下一步”,在这个界面上输入用户名、密码(如填写用户wangnewton,密码wangnewton)和创建这个服务的描述(请记住这个用户密码它是启动这个服务和进入服务控制台的帐号)
然后”下一步”,选择jdk的版本,然后”下一步”,在这个界面你可以修改创建服务的目录和配置名称,然后按”创建”开始创建。
点击完成结束。
2.2 创建应用目录:创建应用目录有两种方式分别介绍如下
2.2.1方法一:继续采用Configuration Wizard 创建
这次选择”extend and existing weblogic configuration(扩展weblogic配置)”,
然后“下一步”,选择前面配置的weblogic配置目录mydomain,然后“下一步”,
在”Configuration Extensions”中勾选”DefaultWebApp”,
然后以下取默认值一路”下一步”直到”导入”就OK了。
默认应用目录一般在D:/bea/user_projects/applications/mydomain/DefaultWebApp(注:d:为我PC机上安装weblogic的盘符,读者根据安装目录进行查找)。
测试:启动weblogic服务,然后输入http://localhost:7001就可以看到介绍性页面了。
2.2.2方法二:使用控制台创建应用目录
使用这个方法最好先要有一个可以发布的web应用,比如大家做过的基于tomcat的项目。没有的话至少要有webapp/WEB-INF/web.xml文件,web.xml文件类似于:
webapp
|__WEB-INF/web.xml
web.xml内容一般是:
<?xml version="1.0" ?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</web-app>
创建好如上的文件结构和web.xml后,启动weblogic服务,完成后在浏览器中输入http://127.0.0.1:7001/console
在登录界面输入你创建weblogic服务时的用户密码(wangnewton)。然后sign in,在下面的页面中选择“Web Application Modules”
点击后进入该界面,点击Deploy a new Web Application Module...
在“Location”下选择你刚才创建的appweb(注意这个目录一定要有WEB-INF目录,并且在WEB-INF目录下一定要有web.xml文件,否则不能够创建应用目录)。选择后,点击”target module”,
返回,可以看到当前weblogic服务中依成功创建的应用目录了。然后再创建一个index.html文档放在appweb目录下,就完成了应用目录的创建。
测试:启动weblogic服务,然后输入http://127.0.0.1:7001/webapp/index.html就可以看到自己设置的页面了。
PS:相对来说,方法二是实际项目中使用最多的一种配置方法。
继续PS:如何设置项目为默认启动路径?
对于刚才创建的应用目录,总要通过http://127.0.0.1:7001/webapp/index.html,能否直接设置成通过http://127.0.0.1:7001/index.html可以访问的方式呢?
方法是在webapp/WEB-INF下新建一个weblogic.xml文件,
webapp
|__WEB-INF/weblogic.xml
weblogic.xml内容一般是:
<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN" "http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd">
<weblogic-web-app>
<context-root>/</context-root>
</weblogic-web-app>
三、weblogic 连接池的配置
实例背景:SQL-SERVER 2000的数据库 + JDBC3.0
3.1 配置连接池
进入控制台(console) 可以看到该界面 ,然后点击 Connetion Pools
点击后进入该界面,点击configure a new JDBC Conneciton Pool
点击后显示该界面 因为是使用SQL-SERVER 2000 所以选择MS SQL Server
选择后,选择 MicroSoft’s MS SQL Server Driver (type) Version 。。。[倒数第三个^-^]然后点击Continue
按页面要求填入相关信息
此步骤完成后,进入该页面
点击 Test Driver Configuration ,如果是成功显示该页
点击Create and deploy,
3.2 配置数据源
进入控制台,点击date source。。。
点击后显示该页 点击 configure a new JDBC Data Source
点击后进入该页
以下步骤都是默认选择后显示
由此,数据源就配置成功了,记住这里的JNDIName配置为MyJNDI,稍后将会在程序中被使用。
四、weblogic 连接池测试程序:
package com.j2ee.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import javax.naming.Context;
import javax.naming.InitialContext;
import java.util.*;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* @author hiberjo
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class TestWeblogicPool extends HttpServlet {
/**
* Destruction of the servlet. <br>
*/
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
/**
* The doGet method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to get.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
Context ctx = null;
Hashtable ht = new Hashtable();
ht.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
ht.put(Context.PROVIDER_URL,"t3://localhost:7001");
//ht.put(Context.SECURITY_PRINCIPAL,"weblogic");
//ht.put(Context.SECURITY_CREDENTIALS,"qinzhongjun");
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
response.setContentType("text/html;charset=gb2312");
PrintWriter out = response.getWriter();
try
{
ctx = new InitialContext(ht);
DataSource ds = (DataSource)ctx.lookup("jo");
conn = ds.getConnection();
stmt = conn.createStatement();
stmt.executeQuery("select * from TUser");
rs = stmt.getResultSet();
out.println("<html><body>");
while(rs.next())
{
out.println(rs.getString(1)+"_");
out.println(rs.getString(2)+"_");
out.println(rs.getString(3)+"<br>");
}
out.println("</body></html>");
if( stmt!=null)
{
stmt.close();
}
if(conn != null)
{
conn.close();
}
out.flush();
out.close();
}
catch(Exception e)
{
e.printStackTrace();
}
finally
{
try
{
ctx.close();
}
catch(Exception e)
{
out.println("ctx ERR !");
}
try
{
if(rs != null)
{
rs.close();
}
if(stmt != null)
{
stmt.close();
}
if(conn != null)
{
conn.close();
}
}
catch(Exception e)
{
out.println("ctx ERR !");
}
}
}
/**
* Initialization of the servlet. <br>
*
* @throws ServletException if an error occure
*/
public void init() throws ServletException {
// Put your code here
}
}