精华内容
下载资源
问答
  • Spring+Struts+Hibernate被简称为SSH,是Java EE开发中比较流行的开发框架组合,很够方便快速的让你开发你想要的网站。... 这三套如果通过maven来搭建那会比较容易,在通过maven,则会比较繁琐,本文介

         Spring+Struts+Hibernate被简称为SSH,是Java EE开发中比较流行的开发框架组合,很够方便快速的让你开发出你想要的网站。Spring负责解耦,主要是通过控制反转来实现。Struts负责受理Web前端请求,主要Action来实现。Hiernate负责数据库对象映射,持久化数据。

         这三套如果通过maven来搭建那会比较容易,在不通过maven,则会比较繁琐,本文介绍的是不用maven的情况下,搭建SSH框架的学习笔记,梳理记录知识点。

    一、版本介绍

    spring-2.5.6
    struts-1.3.8
    hibernate-3.3.1

    二、涉及的jar包介绍

    2.1 spring涉及的jar包

    aspectjrt.jar
    aspectjweaver.jar
    cglib-nodep-2.1_3.jar
    common-annotations.jar
    commons-dbcp.jar
    commons-logging.jar
    commons-pool.jar
    log4j-1.2.15.jar
    spring.jar
    spring-webmvc-struts.jar

    2.2 strutst涉及的jar包

    antlr-2.7.2.jar
    bsf-2.3.0.jar
    commons-beanutils-1.7.0.jar
    commons-chain-1.1.jar
    commons-digester-1.8.jar
    commons-fileupload-1.1.1.jar
    commons-io-1.1.jar
    commons-logging-1.0.4.jar
    commons-validator-1.3.1.jar
    jstl.jar
    oro-2.0.8.jar
    standard.jar
    struts-core-1.3.8.jar
    struts-el-1.3.8.jar
    struts-extras-1.3.8.jar
    struts-faces-1.3.8.jar
    struts-mailreader-dao-1.3.8.jar
    struts-scripting-1.3.8.jar
    struts-taglib-1.3.8.jar
    struts-tiles-1.3.8.jar

    2.3 hibernate涉及的jar包

    antlr-2.7.6.jar
    commons-collections-3.1.jar
    dom4j-1.6.1.jar
    ehcache-1.2.3.jar
    ejb3-persistence.jar
    hibernate3.jar
    hibernate-annotations.jar
    hibernate-cglib-repack-2.1_3.jar
    hibernate-commons-annotations.jar
    hibernate-entitymanager.jar
    javassist-3.4.GA.jar
    jta-1.1.jar
    log4j.jar
    slf4j-api-1.5.2.jar
    slf4j-log4j12.jar

    三、涉及的配置文件

    3.1 spring涉及的配置文件

    beans.xml
    主要用于配置spring容器的相关配置,管理控制反转的配置。

    3.2 struts涉及的配置文件

    struts-config.xml
    主要用于配置Action。

    3.3 hibernate涉及的配置文件

    hibernate.cfg.xml
    主要用于对象映射模型的配置。

    3.4 web网站配置文件

    web.xml
    主要用于网站全局范围的配置管理。

    这一篇文章是SSH项目搭建前的准备及初步了解,后续文章将陆续介绍各个框架的搭建和整合过程。


    展开全文
  • 部署Maven+Nexus的本地私有服务器

    千次阅读 2018-05-22 10:07:22
     之所有要部署本地私有服务器,而不是直接用Maven来今天项目管理,主要是因为Maven每次都要去远程的仓库进行数据的拉取,而部署了Nexus后,Maven就可以先到Nexus去拉取jar包,如果Nexus没有此jar包的话,Nexus会到...

        最近出了几天差,一直没有更新博客。今天我们不谈大数据,来看看怎么部署Maven+Nexus的本地私有服务器。

        之所有要部署本地私有服务器,而不是直接用Maven来今天项目管理,主要是因为Maven每次都要去远程的仓库进行数据的拉取,而部署了Nexus后,Maven就可以先到Nexus去拉取jar包,如果Nexus没有此jar包的话,Nexus会到远程仓库去下载jar包,然后放在Nexus所在的服务器上,Maven再从Nexus拉取数据到本地仓库。

        首先先说明一下,我在Linux机器上部署Nexus服务器(比windows的下载速度要快很多),在windows上部署Maven。当我们开发项目时,Maven会先在本地的仓库中找相应的jar包,如果找不到,就到Nexus的仓库中找,如果还找不到,就到远程的仓库中找。我之前已经在windows部署好了jdk和Maven的环境及环境变量。


        1.在Linux中部署Nexus

           a)首先现在Nexus的安装包,我们需要tar.gz的安装包https://www.sonatype.com/download-oss-sonatype。在底部下载nexus-2.14.8-01-bundle.tar.gz。之后将安装包放在linux中进行解压。(Linux系统中也要先配置好jdk)

            b)安装Nexus

               $>cd /soft

               $>mkdir nexus

               $>cd nexus

               $>tar -xzvf nexus-2.14.8-01-bundle.tar.gz

            解压后会看到,其中nexus是一个软连接,可以不必做,nexus-2.14.8-01存放启动文件和配置文件,sonatype-work文件夹存在我们从远程仓库下载的jar包。


               $>cd nexus-2.14.8-01/bin

               $>sh nexus start

                之后我们可以到浏览器中查看web客户端http://192.168.37.201:8081/nexus。应该能看到这个页面。在该页面的右上角有个login,点击进行登录。默认Username:admin,Password:admin123


                登录后是这样的,这里有一些配置,主要是否下载索引,索引的目的是为了搜索更快一下。可配置也可不配置。单击Type是proxy的几个仓库


                 单击Type是Proxy的几个仓库,在Download Remote Indexes中可以选择true或者false。


          2.修改Maven中的配置文件

               找到Maven的配置文件settings.xml(windows机器上的), D:\java\apache-maven-3.3.9\conf

    <?xml version="1.0" encoding="UTF-8"?>
    <!--
    Licensed to the Apache Software Foundation (ASF) under one
    or more contributor license agreements.  See the NOTICE file
    distributed with this work for additional information
    regarding copyright ownership.  The ASF licenses this file
    to you under the Apache License, Version 2.0 (the
    "License"); you may not use this file except in compliance
    with the License.  You may obtain a copy of the License at
    
        http://www.apache.org/licenses/LICENSE-2.0
    
    Unless required by applicable law or agreed to in writing,
    software distributed under the License is distributed on an
    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, either express or implied.  See the License for the
    specific language governing permissions and limitations
    under the License.
    -->
    
    <!--
     | This is the configuration file for Maven. It can be specified at two levels:
     |
     |  1. User Level. This settings.xml file provides configuration for a single user,
     |                 and is normally provided in ${user.home}/.m2/settings.xml.
     |
     |                 NOTE: This location can be overridden with the CLI option:
     |
     |                 -s /path/to/user/settings.xml
     |
     |  2. Global Level. This settings.xml file provides configuration for all Maven
     |                 users on a machine (assuming they're all using the same Maven
     |                 installation). It's normally provided in
     |                 ${maven.home}/conf/settings.xml.
     |
     |                 NOTE: This location can be overridden with the CLI option:
     |
     |                 -gs /path/to/global/settings.xml
     |
     | The sections in this sample file are intended to give you a running start at
     | getting the most out of your Maven installation. Where appropriate, the default
     | values (values used when the setting is not specified) are provided.
     |
     |-->
    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
    		  
      <!-- deploy artifacts to repository. -->  
       <servers>  
        <server>  
          <id>nexus-releases</id>  
          <username>admin</username>  
          <password>admin123</password>  
        </server>  
        <server>  
          <id>nexus-snapshots</id>  
          <username>admin</username>  
          <password>admin123</password>  
        </server>  
       </servers>
       <mirrors>   
      
        <mirror>  
          <!--This sends everything else to /public -->  
          <id>nexus</id>  
          <mirrorOf>*</mirrorOf>  
          <url>http://192.168.37.201:8081/nexus/content/groups/public</url>  
        </mirror> 
      </mirrors>  
      <profiles>
        <profile>
          <id>nexus</id>
          <repositories>
            <repository>
              <id>nexus</id>
              <name>Nexus</name>
              <url>http://192.168.37.201:8081/nexus/content/groups/public/</url>
              <releases>
                    <!-- true表示开启仓库发布版本下载,false表示禁止 -->
                    <enabled>true</enabled>
    
            </releases>
            <snapshots>
                <!-- true表示开启仓库快照版本下载,false表示禁止 -->
                <enabled>true</enabled>
    
            </snapshots>
           </repository>
         </repositories>
    
        <pluginRepositories>
            <pluginRepository>
                <id>nexus</id>
                <url> http://192.168.37.201:8081/nexus/content/groups/public/</url>
                <releases>
                    <enabled>true</enabled>
                </releases>
                <snapshots>
                    <!-- 禁止快照版本,防止不稳定的插件影响项目构建 -->
                    <enabled>false</enabled>
                </snapshots>
            </pluginRepository>
        </pluginRepositories>
       </profile>
     </profiles>
    <!-- 激活nexus私服 -->
     <activeProfiles>
       <activeProfile>nexus</activeProfile>
     </activeProfiles>  
    </settings>
    

            之后我们就可以在项目中加入依赖项,Maven会先从本地的仓库(默认C:\Users\CNWISHE2\.m2\repository)寻找jar包,找不到回到Nexus中寻找jar包,如果Nexus中没有,会到远程的仓库中寻找jar包。

            这里要注意我们配置的地址是

    http://192.168.37.201:8081/nexus/content/groups/public

            这是一个仓库组的地址,是把几个仓库合并在一起,当然你也可以自己配置仓库。这里的仓库组我们可以看看是哪几个仓库的集合。图中可以看到是Release,Snapshot,3rd party和Central,其实我们主要用的还是Central,你可以新建自己的代理仓库,然后加入到这个groups里。在单独配置仓库中,注意id和name要和相应的仓库对应好。

      

            例如Central仓库,id和name要在项目的pom.xml对应好。而且还可以修改远程仓库地址,可以修改成阿里源的镜像地址,下载速度会快很多。建议不要修改Central仓库的地址,要自己新建一个代理仓库,在自己的仓库中指定阿里的镜像地址。


          2.新建一个Maven项目

            新建一个Maven项目,然后编写pom.xml文件

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    	<modelVersion>4.0.0</modelVersion>
    
    	<groupId>com.wilson</groupId>
    	<artifactId>testNexus3</artifactId>
    	<version>0.0.1-SNAPSHOT</version>
    	<packaging>jar</packaging>
    
    	<name>testNexus3</name>
    	<url>http://maven.apache.org</url>
    
    	<properties>
    		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    	</properties>
    
    	<dependencies>
    		<!-- https://mvnrepository.com/artifact/org.mortbay.jetty/jetty-util -->
    		<dependency>
    			<groupId>org.mortbay.jetty</groupId>
    			<artifactId>jetty-util</artifactId>
    			<version>6.1.24</version>
    		</dependency>
    		<dependency>
    			<groupId>junit</groupId>
    			<artifactId>junit</artifactId>
    			<version>3.8.2</version>
    			<scope>test</scope>
    		</dependency>
    	</dependencies>
    </project>

                在项目的pom.xml文件中,只要添加依赖项就可以了,不不必再执行仓库的地址。之后Nexus会先从仓库中,先放在自己的Nexus服务器中,我们可以在web页面中查看。选在Central仓库->Browse Storage就可以看到。

           

        好了,今天就先写到这里,与您共勉!

     





    展开全文
  • GoodProject Maven Webapp.zip

    2019-05-12 14:06:27
    1:数据访问层:主要是对非原始数据(数据库或者文本文件等存放数据的形式)的操作层,而不是指原始数据,也就是说,是对数据库的操作,而不是数据,具体为业务逻辑层或表示层提供数据服务. (主要用来访问数据库表) 2:...
  • 在这个例子中,将在页面导航完成后,生成一个 json 格式的文件,里面包含页面性能的具体数据,可以用 Chrome 浏览器开发者工具打开该 json 文件,并分析性能。 5、页面截图 BrowserFetcher.downloadIfNotExist...
  • 我们知道现在使用json数据格式是前后端比较流行的...我们新建一个SpringBoot项目(我这里的版本是2.2.2.RELEASE)这里先贴我们的pom.xml文件:xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://ma...

    我们知道现在使用json数据格式是前后端比较流行的交互手段。那么是不是所有的object对象都可以转换为json格式来传输呢?

    显然不是的,这里给出一个反例。

    我们新建一个SpringBoot项目(我这里的版本是2.2.2.RELEASE)

    这里先贴出我们的pom.xml文件:

    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">

    4.0.0

    org.springframework.boot

    spring-boot-starter-parent

    2.2.2.RELEASE

    undestiny

    demo

    0.0.1-SNAPSHOT

    demo

    Demo project for Spring Boot

    1.8

    org.springframework.boot

    spring-boot-starter-web

    org.projectlombok

    lombok

    true

    org.springframework.boot

    spring-boot-starter-test

    test

    org.junit.vintage

    junit-vintage-engine

    org.springframework.boot

    spring-boot-maven-plugin

    创建一个实体Entity:

    import lombok.Data;

    @Data

    public class Entity {

    private Integer id;

    private Entity entity;

    }

    tips:@Data是lombok下注解,这里主要是用来提供getter/setter方法

    然后写一个MyContoller,模拟一个循环引用(这里是自己引用自己):

    import org.springframework.web.bind.annotation.GetMapping;

    import org.springframework.web.bind.annotation.RestController;

    @RestController

    public class MyController {

    @GetMapping("/demo")

    public Entity demo(){

    Entity entity = new Entity();

    entity.setEntity(entity);

    return entity;

    }

    }

    然后运行我们的项目。

    会发现我们的后台报了一个错误:

    是jackson把entity转为json时出现了问题:

    Direct self-reference leading to cycle 直接自我引用导致循环

    那么如果不是直接自我引用,而是间接的循环引用呢?

    我们来修改一下MyController:

    import org.springframework.web.bind.annotation.GetMapping;

    import org.springframework.web.bind.annotation.RestController;

    @RestController

    public class MyController {

    @GetMapping("/demo")

    public Entity demo(){

    Entity entity1 = new Entity();

    Entity entity2 = new Entity();

    entity1.setEntity(entity2);

    entity2.setEntity(entity1);

    return entity1;

    }

    }

    之前是entity引用自己,现在是entity1引用entity2,entity2再引用entity1,形成间接循环。

    然后运行我们的项目。

    会发现我们的后台报了一个StackOverflowError错误。

    是我们的后台程序在尝试进行json处理时,发生了如下情况:试图把entity1解析为JSON字符串

    发现entity1引用了entity2,就先把entity2解析为JSON字符串

    发现entity2引用了entity1,就先把entity1解析为JSON字符串

    发现entity1引用了entity2,就先把entity2解析为JSON字符串

    ……

    无限循环下去,导致栈溢出,无法正确得到结果。

    展开全文
  • maven3+struts2+spring+ibatis

    2012-03-28 18:23:25
    maven3+struts2+spring+ibatis,本来是用maven3+struts2+spring+hibernate但考虑到hibernate在多表级联查询的时候执行效率高,所以改用性能更好不过sql比较麻烦的的ibatis,本项目只有登录和插入数据,仅供参考: ...
  • maven json-lib build 失败

    2015-01-21 09:23:17
    这两天需要在项目里配置json-lib处理一下json数据。 于是在pom.xml里配置json-lib的依赖。 配置如下:    net.sf.json-lib  json-lib  2.3   但是配置完了之后package的时候却无法成功了。很是让人郁闷。...
    
    
    这两天需要在项目里配置json-lib来处理一下json数据。
    于是在pom.xml里配置json-lib的依赖。
    配置如下:
            <dependency>
                <groupId>net.sf.json-lib</groupId>
                <artifactId>json-lib</artifactId>
                <version>2.3</version>
            </dependency> 
    但是配置完了之后package的时候却无法成功了。很是让人郁闷。不知道那里出问题了。后来到了maven的库里一看才知道,原来json-lib-2.3分不同jdk版本有不同的jar包。需要添加依赖的时候增加一个classifier属性来指定使用哪个版本的。于是改为如下配置:
            <dependency>
                <groupId>net.sf.json-lib</groupId>
                <artifactId>json-lib</artifactId>
                <version>2.4</version>
                <classifier>jdk15</classifier>
            </dependency> 
     
    package build success!
    展开全文
  • 活动的Profile 11.7. 提示和技巧 11.7.1. 常见的环境 11.7.2. 安全保护 11.7.3. 平台分类器 11.8. 小结 12. Maven Assemblies 12.1. Introduction 12.2. Assembly Basics 12.2.1. Predefined ...
  • maven地址为:org.apache.poipoi-ooxml3.17好了,废话多少,上代码jsp前端代码(根据自己的业务)时间:-消费类型:所有报名费酒水零食类支付状态:所有未支付已支付data-options="iconCls:'icon-search'"style=...
  • maven2下pom.xml的json-lib的配置

    千次阅读 2013-08-03 14:15:46
    前两天需要在项目里配置json-lib处理一下json数据。 于是在pom.xml里配置json-lib的依赖。 配置如下:    net.sf.json-lib  json-lib  2.3   但是配置完了之后package的时候却无法成功了。很是让人...
  • 这几天经理搭了个框架,但是事务了点问题,架子用的是jpa2+spring 3 mvc ,但是配置完成后只能查询能保存数据。   代码采用的是maven管理的。 工程分parent,util,web-util ,domain,app 等应用完成。  ...
  • 相对说,网上有一些资料,但不是很全面,本人经过半天的实践,实现了xml的数据交互,在此写重点部分,希望各位读者也能少走弯路,同时也方便自己以后查看。 搭建SpringBoot项目,使用Maven管理只需要添加如下...
  • 1 HDFS的源码查看1.1 HDFS的shell命令#fs命令调用的java类地址最后拼到可执行java命令里直接调用指定类的main(), 通过给main() 传参调用1.2 在maven工程中配置hadoop关联仓库<2 HDFS的常用操作hadoop fs 与 ...
  • 因两个Kafka集群的版本号不一致,尝试了多种解决方案,发现总有一个集群出不来数据,无法互相兼容。 二、Kafka的客户端版本号必须与服务端版本号一致 客户端v0.11.0.1的Maven配置 <d...
  • IoC从字面意思上很难体现维护对象之间的关系, Martin Fowler提出一个新的概念一- -DI ,更明确描述了“被注入对象 ( Service对象)依赖IoC容器配置依赖对象( DAO对象)" . 四、 Spring初体验 跳转到目录 1...
  • 一、前言本次预研Griffin版本为Griffin-0.5.0。通过本文,各位看官可以了解到griffin搭建的一些细节,避免再去踩坑,...二、Griffin编译 Apache Griffin是一个maven工程,整体上看分为三个模块:measure、serv...
  • springboot集成kettle, 访问到ktr文件

    千次阅读 2018-10-22 18:50:31
    由于系统需要从sql server 远程数据库抓取数据存储到当前数据库(mysql)中,所以采用了kettle进行数据抽取。使用spoon图形化工具进行ktr文件的编写。测试通过后,想集成进项目中,然而遇到以下问题: 首先,...
  • 废话多说,直接进入正题:如何使用JSR303的validate,进行数据校验,失败后直接抛异常加入流转信息中,并在form页面提示出来。 首先我们为了启用验证,需要向 项目中添加Bean验证的实现。本列选择Hibernate ...
  • 线程池你真不来了解一下吗? 多线程之死锁就是这么简单 Java多线程打辅助的三个小伙子 还在用Synchronized?Atomic你了解不? 《求求大厂给个Offer》:多线程基础面试题 :ski:设计模式 给女朋友讲解什么是代理...
  • StudentInfo 基于SSM的学生信息管理系统(选课) 已停更 项目简介: 由SpringMVC+MyBatis为主要框架,mysql8.0配置主从复制实现读写分离,主机丛机分别为...当你的才华还撑起你的野心的时候,你就应该静下心学习。
  • 几点说明:第一 ,oracle目前没免费的maven版本,所以采用添加jar包的方式,放在lib里面,如果是mysql,则需要,只在maven下pom里配置就可以了 第二,此项目读写数据采用map做,没用JavaBean,个人觉得有时候...
  • 因为在学校项目中需要使用相关知识,在网上找了相关教程,写了下面的一个小Demo,可以实现从数据库中导出数据到Excl文件中,以及能够从Excel中导入数据到数据库中! 准备工作 经过在百度收集的资料看,基本使用...
  • 新接手的项目采用的是Maven作为编译管理工具,项目内容则是按子模块Module划分...最重要的是,知道maven的pom.xml文件了什么问题,Eclipse也一直无法成功加载部分重要模块(以致最后切换到JetBrain IDEA(Open S...
  • 新接手的项目采用的是Maven作为编译管理工具,项目内容则是按子模块Module划分...最重要的是,知道maven的pom.xml文件了什么问题,Eclipse也一直无法成功加载部分重要模块(以致最后切换到JetBrain IDEA(Open S...
  • 新接手的项目采用的是Maven作为编译管理工具,项目内容则是按子模块Module划分...最重要的是,知道maven的pom.xml文件了什么问题,Eclipse也一直无法成功加载部分重要模块(以致最后切换到JetBrain IDEA(Open S...
  • 目录 启动时选择项目而不是打开最近一次项目 字体设置 idea配置jdk环境 配置maven环境 设置全局的编码格式为...鼠标放到类或者方法名等提示文档注释(如果觉得烦,可以反着就不会注释) 使用idea集成的数据...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 126
精华内容 50
关键字:

maven数据出不来