ssh初学
来源:互联网 发布:出数学试卷的软件 编辑:程序博客网 时间:2024/05/17 00:06
1、工程里面有个Deployment Descriptor目录,想知道这个目录是干什么用的?
答: (1)这个目录其实是与工程的web.xml对应的,为了方便查找或者查看web.xml文件中的部署相关配置;
(2)这个目录下的每一项,相当于web.xml文件中的每个配置项的一个超链接;
2、解析web.xml中的内容
(1)如下代码段中:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring.xml</param-value>
</context-param>
标签contextConfigLocation是为了定义要装入的Spring配置文件,即在classpath下的spring.xml文件;
(2)如下代码段:
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
该代码段的作用雷场类似于load-on-startup Servlet,用于在web应用启动时,启动某些后台程序,这些后台程序负责为系统运行提供支持。如本例用指定ContextLoaderListener的作用就是启动web容器时,自动装配AppliacationContext的配置信息;
(3)如下代码段为过滤器配置:
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
其中的拦截器主要用途是对web传来的一些请求(URL)进行过滤拦截;
(4) 如下代码中:
<!-- struts启动配置 -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
是对struts拦截器的相关配置,其中的StrutsPrepareAndExecuteFilter的作用是:当前台有请求发来时,StrutsPrepareAndExecuteFilter的doFilter()被调用进行request等的封装,找到相应action ,执行相应action;
(5)如下代码:
<!-- log4j相关配置 -->
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/classes/log4j.properties</param-value>
</context-param>
<context-param>
<param-name>log4jRefreshInterval</param-name>
<param-value>60000</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
是log4j相关配置,使用spring中的Log4jConfigListener有如如下好处:
因为 系统把web目录的路径压入一个叫webapp.root的系统变量。这样写log文件路径时不用写绝对路径了.
log4j.appender.logfile.File=${webapp.root}/WEB-INF/logs/myfuse.log
(5)如下代码段:
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
其中,welcome-file-list标签的作用是:制定首页,比如你写的项目 地址是 127.0.0.1 里边有一个也页面 index.jsp
如果要访问这个页面的话你要输入 127.0.0.1/index.jsp,如果在 <welcome-file-list>里指定了index.jsp为首页的话 你只要输入 127.0.0.1 就能直接打开 index.jsp
3、解析spring.xml文件
(1)
4、log4j.properties文件
(1)配置rootLogger,主要配置日志的等级、存储文件等;
(2)配置日志信息的输出目的地:输出文件位置等;
(3)配置日志日志信息的格式;
5、mybatis-config.xml文件
<configuration>
<properties>
<!-- Mybatis 短名转为长名 -->
<property name="namespacePrefix" value="com.cetc28" />
<!-- SQL Mapper 中需替换的namespace正则-->
<property name="includeRegex" value="\w*\.\w*\.mapper\.\w*;\w*\.mapper\.\w*" />
<!-- SQL Mapper 中无需替换的namespace正则-->
<!-- <property name="includeRegex" value="\\.*" /> -->
</properties>
<settings>
<setting name="jdbcTypeForNull" value="NULL" />
<setting name="defaultExecutorType" value="BATCH"/>
</settings>
</configuration>
其中,properties标签中配置的property name 和value的作用是可以替换properties文件中相应属性值;
settings配置如defaultExecutorType,配置和设定执行器为BATCH,使得执行器可以重复执行语句和批量更新;
6、profile-crawler-beans.cxml文件解析
以下内容引自:http://guoyunsky.iteye.com/blog/1744461
可以说crawler-beans.cxml可以主导整个Heritrix的抓取.不同于Heritrix1.x版本的order.xml 是,crawler-beans.cxml采用Spring来管理.里面的配置都是一个个bean.所以无论从配置上,耦合上,动态制 上,Heritrix3.0都改进不少.下面就介绍crawler-beans.cxml中各个bean.
1. bean id=simpleOverrides
class=org.springframework.beans.factory.config.PropertyOverrideConfigurer
字面上的意思为简单的覆盖,的确这里只是简单的覆盖.设置最基本的信息.如抓取任务名字(metadata.jobName),操作URL(metadata.operatorContactUrl),描述信息(metadata.description)
2. bean id=metadata
class=org.archive.modules.CrawlMetadata
如同simpleOverrides
3. bean id=seeds
class=org.archive.modules.seeds.TextSeedModule
种子配置,可以从文件中读取种子,也可以直接设置种子
4. bean id=scope
class=org.archive.modules.deciderules.DecideRuleSequence
URL规则控制,可以决定哪些URL要抓取,哪些URL拒绝,URL抓取深度等
5. bean id=candidateScoper
class=org.archive.crawler.prefetch.CandidateScoper
URL范围控制,通过该范围的URL Heritrix方可接受,成为CrawlURI
6. bean id=preparer
class=org.archive.crawler.prefetch.FrontierPreparer
url预处理,如设置URL的抓取深度,队列,成本控制等
7. bean id=candidateProcessors
class=org.archive.modules.CandidateChain
处理器,引用candidateScoper去控制URL是否可以成为CrawlURI,preparer去设置深度,队列,成本控制等
8. bean id=preselector
class=org.archive.crawler.prefetch.Preselector
预先选择器,这里会过滤掉一部分URL.如blockByRegex为拒绝正则,allowByRegex为允许正则
9. bean id=preconditions
class=org.archive.crawler.prefetch.PreconditionEnforcer
先决条件设置,如设置IP有效期,爬虫协议文件robots.txt有效期
10. bean id=fetchDns
class=org.archive.modules.fetcher.FetchDNS
解析DNS,获得IP
11. bean id=fetchHttp
class=org.archive.modules.fetcher.FetchHTTP
核心模块,获取URL内容,设置状态
12. bean id=extractorHttp
class=org.archive.modules.extractor.ExtractorHTTP
核心模块,抽取URL,抽取出新的URL再次运行,如此爬虫才可以一直爬下去
13. bean id=extractorHtml
class=org.archive.modules.extractor.ExtractorHTML
抽取HTML,包含JSP,ASP等,这里也会抽取JS,CSS等
14. bean id=extractorCss
class=org.archive.modules.extractor.ExtractorCSS
抽取CSS,无需单独配置,ExtractorHTML会调用
15. bean id=extractorJs
class=org.archive.modules.extractor.ExtractorJS
抽取JS,无需单独配置,ExtractorHTML会调用
7、spring-datasource.xml文件解析进行数据库相关配置,如数据库服务器IP地址、数据库用户名及密码等;
8、spring.xml文件解析
解析示例如下:引自:http://blog.csdn.net/zoutongyuan/article/details/27073683
在类上 ,使用以下注解,实现bean 的声明
@Component 泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。
@Service 用于标注业务层组件
@Controller 用于标注控制层组件(如srping mvc的controller,struts中的action)
@Repository 用于标注数据访问组件,即DAO组件
示例:
@Controller
@RequestMapping(value = "/test")
public class TestController {
}
------------------------------------------------------------------------------------------------------------------
在类的成员变量上,使用以下注解,实现属性的自动装配
@Autowired : 按类 的 类型进行装配
@Resource (推荐) : 1 如果同时指定了name和type,则从Spring上下文中找到唯一匹配的bean进行装配,找不到则抛出异常
2. 如果指定了name,则从上下文中查找名称(id)匹配的bean进行装配,找不到则抛出异常
3.如果指定了type,则从上下文中找到类型匹配的唯一bean进行装配,找不到或者找到多个,都会抛出异常
4.如果既没有指定name,又没有指定type,则自动按照byName方式进行装配;如果没有匹配,则回退为一个原始类型进行匹配,如果匹配则自动装配;
@Resource注解在字段上,这样就不用写setter方法了,并且这个注解是属于J2EE的,减少了与spring的耦合。
示例:
@Resource
private TestServiceImpl testServiceImpl;
struts.xml文件主要负责管理应用中的Action映射, 及Action处理结果和物理资源之间的映射关系
- ssh初学
- # 初学SSH
- SSH配置初学笔记
- 初学ssh,觉得好难哪!
- 初学搭建SSH框架
- SSH初学总结
- SSH初学经验
- 初学ssh之Spring 01
- 初学ssh之Spring 02
- JBPM初学---JBPM整合SSH环境搭建
- linux ubuntu12.04初学 ssh/putty配置
- linux远程连接--ssh命令初学
- [SSH框架初学笔记]ssh环境搭建及配置
- Hadoop初学(4)_配置SSH免密码登陆
- 初学SSH框架所需注意的基本点
- hadoop 初学:【1】ssh协议免密码登录
- [SSH框架初学笔记]web.xml文件的基本配置
- linux初学笔记(5):安全的ssh
- if(!a)
- ios swift UIwebView
- 各大开源框架地址
- Cocos2d-HTML5--人物动画
- 移动端页面开发总结(一)
- ssh初学
- "Error, some other host already uses address"的解决方法
- eclipse突然不自动提示了,几种情况如下所示
- Mac中MacPorts安装和使用
- SGI_sort,sort
- nginx的进程模型
- 大区间素数筛选(POJ 2689)
- React 组件之间 事件调用(子组件调用父亲组件)
- jedis切片(集群)非切片(单机)实例