今天试一下Java调用Oracle来看一下。会不会也如昨天实验的一样坑呢?由于我对于Java也接触的不多,所以不打算直接使用该收提供的实验文档,而是自己利用Maven+Struts+Spring来自己实验一遍。

CMD中输入

G:\Java\workspace>mvn archetype:generate -DgroupId=com.vanceinfo.mavenstudy -DartifactId=struts2oracle -DarchetypeArtifactId=maven-archetype-webapp

G:\Java\workspace\struts2oracle>mvn eclipse:eclipse

然后用eclipse打开struts2oracle

POM中添加依赖引用如下:

    <!-- Struts 2 -->
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.3.15</version>
</dependency> <!-- Spring framework -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.3.RELEASE</version>
</dependency> <dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.3.RELEASE</version>
</dependency> <!-- Struts 2 + Spring plugins -->
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-spring-plugin</artifactId>
<version>2.3.15</version>
</dependency>
</dependencies>

为了添加oracle的驱动,我先在官网上看到最新的版本是14,http://search.maven.org/#search%7Cga%7C1%7Cojdbc,可是我添加之后,老是提醒我说error in opening zip file when running maven,将.m2里面的ojdbc的文件夹删掉了也无法获得成功,最后没有办法,只好将ojdbc6.jar复制到我的本地G盘,然后执行

mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=6 -Dpackaging=jar -Dfile=g:\ojdbc6.jar

在POM.xml中加入

    <dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>6</version>
</dependency>

这才得到mvn eclipse:eclipse成功。接下来使用mvn clean install的时候,再次出现了问题产javax.servlet不存在,实在是不在行Java,只好google一番,得到答案说是要将%tomcat%/common/lib目录下的servlet-api.jar添加到%java_home%//jdk1.7.0_09/jre/lib/ext目录下面即可解决,我照做了,并且重启eclipse了,问题得到解决。新看到JRE System Library引用如图示

做了以上这些操作之后,mvn clean install是可以编译通过的。但我不想使用tomcat这个玩意,想用jetty run的方式来跑,于是我在POM中加入:

    <pluginManagement>
<plugins>
<plugin >
<groupId> org.mortbay.jetty</groupId >
<artifactId> maven-jetty-plugin</artifactId >
</plugin >
</plugins >
</pluginManagement>

最后运行mvn jetty:run之后,直接在浏览器中输入http://localhost:8080/struts2oracle/main.html就可以看到想看到的画面了。

接下来可能会有一些oracle的相关的连接问题了,发现只有添加学生的页面是正确显示的。所以我们需要调试就好。设定调试,就是加入环境变量

MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n

网上有有些人贴出这个值应该是:-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n,多了两个参数,即-Xnoagent 和-Xjava.compiler=NONE.

然后如果运行时出现了端口号的话,一般就ok了,不过我在我的64位机器上设两个参数,打断点后都没有出现小老鼠尾巴。各种纠结中....调试中....。

Oracle11g R2学习系列 之四Maven+Struts+Spring实验的更多相关文章

  1. Oracle11g R2学习系列 之二基本概念和环境介绍

    昨天安装好了之后,发现用Chrome打开OEM发现是英文的,搞得我好奇怪:安装时明明自动显示的是中文的,为何会是英文的呢.后来想想会不会是Oracle用的是浏览器的语言呢,果断打开Chrome的设置, ...

  2. Oracle11g R2学习系列 之七安全性

    其实,对于目前我使用的Oracle的水平来看,还达不到使用安全管理的高度,只是作为一个学习来看一下. 关于Oracle的安全管理,一般使用OEM来操作完成好了,入口是:OEM的“服务器”属性页中,选择 ...

  3. Oracle11g R2学习系列 之一安装篇

    前言 最近想去前同事推荐的一个Oracle相关的岗位竞争一下,由于之前没有使用Oracle的相关经验,所以决定学习一下,就算最终岗位应聘不成,至少也有了一些Oracle经验了,说不定哪天就用上了.再说 ...

  4. Oracle11g R2学习系列 之十 解决EM不能用

    不知道是什么原因https://localhost:1158/em,今天突然就不能用了.做了好多搜索也没有解决.现象是在services.msc中,不能重启OracleDBConsole服务,提示: ...

  5. Oracle11g R2学习系列 之九 PL/SQL语言

    这是个重头戏,如果精通了PL/SQL,毫不夸张的说明精通了Oracle了.PL/SQL由以下三个部分组成(Definition,Manipulation,Control): DDL:数据定义语言,Cr ...

  6. Oracle11g R2学习系列 之八高级数据类型

    所谓的高级数据类型,就是大数据类型,即BCNB(助记词:BC牛逼)+XML数据类型. B:blob,用来存储可变长度的二进制数据. C:clob,主要用来存储可变长度的字符型数据,也就是其他数据库中提 ...

  7. Oracle11g R2学习系列 之六数据库链接,快照及序列

    Create public database link link_name Connect to user identified by password using 'DBName' 为'DBName ...

  8. Oracle11g R2学习系列 之五回闪

    Oracle里面有一个回闪的操作,这个貌似sql server是没有的.要使用这个功能,需要用到两个时间内部函数 TIMESTAMP和TO_TIMESTAMP.其中,函数TO_TIMESTAMP的语法 ...

  9. Oracle11g R2学习系列 之三教程选择

    工欲善其事必先利其器,选择一本入门教程也是很重要的,本人使用的也是这位同事推荐的电子工业出版社的<<Oracle 实用教程(第3版)>>郑阿奇主编,可以至这里购买到,我个人还是 ...

随机推荐

  1. HTML&CSS基础学习笔记1.8-预格式文本

    <pre>标签的主要作用是预格式化文本.被包围在 pre 标签中的文本通常会保留空格和换行符.而文本也会呈现为等宽字体. <pre>标签的一个常见应用就是用来表示计算机的源代码 ...

  2. iOS学习之懒加载

    懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小).所谓懒加载,其实是重写getter方法. 注意:如果是懒加载的话则一定要注意先判断是否已经有了,如果没有那么再去进行实例化 使用懒 ...

  3. resumable.js —— 基于 HTML 5 File API 的文件上传组件 支持续传后台c#实现

    在git上提供了java.nodejs.c#后台服务方式:在这里我要用c#作为后台服务:地址请见:https://github.com/23/resumable.js 我现在visual studio ...

  4. Linux方面收藏的一点儿资料

    初来乍到,也算是第一次写技术类相关的博客,就分享几篇收藏的Linux相关的资料吧,希望可以给需要的人一点帮助. 1.<高级Bash脚本编程指南>:该网站详细讲解了Bash Shell编程的 ...

  5. 浅谈PCB敷铜的“弊与利”

    敷铜作为PCB设计的一个重要环节,不管是国产的青越锋PCB设计软件,还国外的一些Protel,PowerPCB都提供了智能敷铜功能,那么怎样才能敷好铜,我将自己一些想法与大家一起分享,希望能给同行带来 ...

  6. 自制单片机之十六……将文字或图形转成LCD上使用的C51字模数据

    这一讲说说如何用取模软件将图形转成数据吧,有很多人反复问我这个问题,我就再罗嗦下吧! 取字模的软件有很多款.有的只能将文字转成字模数据,有的既可将文本文字转字模也能将图片转成点阵数据.在这里我就介绍一 ...

  7. VMCloud云平台 系列博文

    VMCloud云平台 系列博文http://blog.51cto.com/zt/644http://blog.51cto.com/zt/650 http://ljbaby.blog.51cto.com ...

  8. 浅谈单片机、ARM和DSP的异同

    犹记得当年读书的时候,老师说单片机.ARM.DSP有互通之处,都是CPU,但听老师讲都听不懂. 我该如何理解他们,并找出他们的异同呢?我们来看看行内人的看法: ICer,从事ARM CPU的SOC设计 ...

  9. MVC分部试图传参数

      @Html.Partial("_NavMenuPage", new ViewDataDictionary { { "proimshowId",imshowI ...

  10. JAVA车票管理系统(简单GUI)

    一.    需求分析 1.设计题目:车票管理系统 用JAVA语言和数据结构知识设计设计车票管理系统.要求如下所述: 一车站每天有n个发车班次,每个班次都有一个班次号(1.2.3…n),固定的发车时间, ...