依赖包是什么 java?什么是java的依赖注入
本篇文章给大家谈谈依赖包是什么 java,以及什么是java的依赖注入对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。
什么是java的依赖注入
Java的依赖注入:依赖注入,出自spring的IOC和DI,是Spring的两大特性之一(另一个AOP面向切面编程)
以前对象使我们手动实例化,比如:Service层调用Dao层,需要Dao d= new Dao;但是这样会导致两个层之间的耦合性大大增强。而spring的IOC,反转控制,会在我们需要实例对象的时候,由spring容器为我们提供,并通过DI依赖注入来实现目标对象的获得,完成解耦操作。
可以通过setter方法注入、构造注入、注解注入。
怎么查找maven的各个jar包依赖的是别的什么jar包
1、创建一个新的Maven项目:
mvn archetype:create-DgroupId=org.sonatype.mavenbook.ch3-DartifactId=simple-DpackageName=org.sonatype.mavenbook
2、构建打包应用:
mvn install[在pom.xml同级目录下执行]
3、查看项目完整的pom.xml文件,包括系统默认设置以及用户自定义设置:
mvn help:effective-pom
4、生成报告或者文档:
mvn site
5、mvn exec:java执行目标类
mvn exec:java-Dexec.mainClass=org.sonatype.mavenbook.weather.Main
6、查看插件的完整
mvn help:describe-Dplugin=exec-Dfull
7、找出该项目所依赖的项目(jar)列表:
mvn dependency:resolve
mvn dependency:analyze(找出项目非直接依赖)
结果如下:
[INFO] The following files have been resolved:
[INFO] com.ibm.icu:icu4j:jar:2.6.1:compile
[INFO] commons-collections:commons-collections:jar:3.1:compile
[INFO] commons-lang:commons-lang:jar:2.1:compile
[INFO] dom4j:dom4j:jar:1.6.1:compile
[INFO] jaxen:jaxen:jar:1.1.1:compile
[INFO] jdom:jdom:jar:1.0:compile
[INFO] junit:junit:jar:3.8.1:test
[INFO] log4j:log4j:jar:1.2.14:compile
[INFO] oro:oro:jar:2.0.8:compile
[INFO] velocity:velocity:jar:1.5:compile
[INFO] xalan:xalan:jar:2.6.0:compile
[INFO] xerces:xercesImpl:jar:2.6.2:compile
[INFO] xerces:xmlParserAPIs:jar:2.6.2:compile
[INFO] xml-apis:xml-apis:jar:1.0.b2:compile
[INFO] xom:xom:jar:1.0:compile
8、查看整个项目的依赖树:
mvn dependency:tree
结果如下:
[INFO] org.sonatype.mavenbook.ch04:simple-weather:jar:1.0
[INFO]+- log4j:log4j:jar:1.2.14:compile
[INFO]+- dom4j:dom4j:jar:1.6.1:compile
[INFO]|\- xml-apis:xml-apis:jar:1.0.b2:compile
[INFO]+- jaxen:jaxen:jar:1.1.1:compile
[INFO]|+- jdom:jdom:jar:1.0:compile
[INFO]|+- xerces:xercesImpl:jar:2.6.2:compile
[INFO]|\- xom:xom:jar:1.0:compile
[INFO]|+- xerces:xmlParserAPIs:jar:2.6.2:compile
[INFO]|+- xalan:xalan:jar:2.6.0:compile
[INFO]|\- com.ibm.icu:icu4j:jar:2.6.1:compile
[INFO]+- velocity:velocity:jar:1.5:compile
[INFO]|+- commons-collections:commons-collections:jar:3.1:compile
[INFO]|+- commons-lang:commons-lang:jar:2.1:compile
[INFO]|\- oro:oro:jar:2.0.8:compile
[INFO]\- junit:junit:jar:3.8.1:test
9、查看完整的依赖,包括那些因为冲突而被拒绝引入的依赖:
mvn install-X
10、打包应用(jar):
mvn install assembly:assembly
11、在 Jetty Servlet容器中启动你的 web应用:
mvn jetty:run
12、重新编译:
mvn compile
java dependency
java dependency是什么,让我们一起了解一下:
dependency是通过JAVA代码对pom.xml文件进行增加与删除操作的一种依赖,当项目A依赖于B,而B又依赖于C的时候,自然的A会依赖于C,这样Maven在建立项目A的时候,会自动加载对C的依赖。
如何通过java代码对pom.xml文件进行操作?
首先需要引入jar包:
org.apache.maven maven-model 3.6.0
对xml文件进行增加操作:代码中的key为:maven-model。
Value为:
org.apache.maven maven-model 3.6.0
而在Maven中,任何依赖(jar包,tomcat等),或项目(自己打包的jar,war等)输出都可成为构件。每个构件都有自己的唯一标识(唯一坐标),由groupId,artifactId,和version等信息构成,由此,Maven就可以对构件进行版本控制,管理。
任何可以被Maven的坐标系统唯一标识的对象都是一个Maven构件,但是,只包含其他POM文件(该文件本身不产生构件,打包方式为pom)使用定义的POM文件也是一个Maven构件。
实战操作: com.oracle ojdbc6 11g import java.sql.*; public class Test { public static void main(String[] args) { Connection conn = null; PreparedStatement pstmt = null; ResultSet res = null; try { //Class.forName("oracle.jdbc.driver.OracleDriver"); //String url="jdbc:oracle:thin:@ip:orcl"; Class.forName("com.mysql.jdbc.Driver"); String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF8"; String user = ""; String pwd = ""; conn = DriverManager.getConnection(url, user, pwd); //query String sql = "select * from student where age = ?"; pstmt = conn.prepareCall(sql); pstmt.setInt(1, 18); res = pstmt.executeQuery(); //getColumnLabel ResultSetMetaData rsmd = res.getMetaData(); for (int i = 0, n = rsmd.getColumnCount(); i
关于依赖包是什么 java,什么是java的依赖注入的介绍到此结束,希望对大家有所帮助。