配置问题总结

编码的问题转为配置的问题,这样简化了逻辑。

尤其是在对于webx、maven这种框架、工具。

Webx

视图层

写的是vm代码。一般主要内容在screen中,screen引用

$control.setTemplate("home:pageTitle.vm").setParameter("pageTitle","查询记录")

这行代码中的home这个标签在webx-home.xml中的component中设置

<a href="$queryModule.setTarget(‘/detail_query.vm‘)"><font size="3">会员具体信息</font></a>

这行代码中的home这个标签在uris.xml中设置以支持${xxx}替换

<uris:turbine-uri id="queryModule" exposed="true" extends="serverContent">
            <componentPath>/query</componentPath>
        </uris:turbine-uri>

autoconfig

这个在src/main/webapp/META-INF/autoconf下配置模板。能够用于引用外部配置量

version=${club_version}
production=${club_production}
output=${club_output}
SystemId=${club_SystemId}

然后在auto-config.xml中生成配置文件

<script>
        <generate template="club.properties.vm" destfile="club.properties" charset="UTF-8" />
        <generate template="web.xml.vm" destfile="WEB-INF/web.xml" charset="UTF-8" />
        <generate template="logback.xml.vm" destfile="WEB-INF/logback.xml" charset="UTF-8" />
    </script>

Spring配置文件放在src/main/resources/META-INF

在Spring中引用那些变量通过这段代码载入

<bean
        class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor" />
    <bean
        class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="ignoreUnresolvablePlaceholders" value="true" />
        <property name="locations">
            <list>
                <value>classpath:havana-club.properties</value>
            </list>
        </property>
    </bean>

Spring

reference

Spring中载入配置文件是通过以下来实现的。

<context:property-placeholder location="classpath:jdbc.properties"/>
<!--然后就能够在以下使用了--!>
<bean id="testDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="${test.jdbc.driverClassName}"/>
    <property name="url" value="${test.jdbc.url}"/>
    <property name="username" value="${test.jdbc.username}"/>
    <property name="password" value="${test.jdbc.password}"/>
</bean>

Maven

刚開始对于maven中一个assembly.xml不理解,这个是怎样引入的。

事实上是一个maven插件。在pom中配置

当中不理解的就是maven里面有一些${xx}的设置找不到源头。

maven的自己定义变量方法

<!-- 全局属性配置。在project下 -->
<properties>
    <project.build.name>tools</project.build.name>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>  

Maven内置变量说明:

reference

${basedir} 项目根文件夹

${project.build.directory} 构建文件夹,缺省为target

${project.build.outputDirectory} 构建过程输出文件夹。缺省为target/classes

${project.build.finalName} 产出物名称。缺省为${project.artifactId}-${project.version}

${project.packaging} 打包类型,缺省为jar

${project.xxx} 当前pom文件的随意节点的内容

pom.xml:

<?xml version="1.0"?>
<project
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
    xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>com.bingone.app</groupId>
        <artifactId>club</artifactId>
        <version>0.2.2</version>
    </parent>
    <artifactId>deploy</artifactId>
    <name>Havana Club Deploy</name>

    <properties>
        <assembly-version>2.4</assembly-version>
    </properties>

    <build>
        <finalName>club</finalName>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-assembly-plugin</artifactId>
                <version>${assembly-version}</version>
                <executions>
                    <execution>
                        <id>assemble</id>
                        <goals>
                            <goal>single</goal>
                        </goals>
                        <phase>package</phase>
                    </execution>
                </executions>
                <configuration>
                    <descriptors>
                        <descriptor>assembly.xml</descriptor>
                    </descriptors>
                    <outputDirectory>${project.build.directory}</outputDirectory>
                    <appendAssemblyId>false</appendAssemblyId>
                    <attach>false</attach>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

assembly.xml:

<?xml version="1.0" encoding="UTF-8"?>
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">

    <id>tgz</id>
    <!-- 应用名.war(压缩包解压后的文件夹名) -->
    <baseDirectory>${project.build.finalName}.war</baseDirectory>
    <formats>
        <!-- 压缩包的格式,一律为tar.gz -->
        <format>tar.gz</format>
    </formats>

    <fileSets>
        <fileSet>
            <!-- 要压缩的文件夹。请按实际文件夹填写 -->
            <directory>${project.parent.build.directory}/${project.build.finalName}</directory>
            <!-- 输出的文件夹,此处为空就可以 -->
            <outputDirectory></outputDirectory>
            <includes>
                <include>**/**</include>
            </includes>
        </fileSet>
    </fileSets>
</assembly>
时间: 2024-08-30 12:58:48

配置问题总结的相关文章

Struts2中使用Velocity模板时模板资源路径配置问题

在Struts2中使用Velocity模板时,如何以相对与Web工程的路径来配置模板资源文件路径这个问题网上千篇一律的来自Velocity官方文档.官方文档中指出如果是Web工程的话,模板的相对路径是工程根路径,今天在使用的时候有如下配置: Velocity.properties(默认在WEB-INF下): resource.loader =file, classclass.resource.loader.description = Velocity Classpath Resource Loa

spring配置中,properties文件以及xml文件配置问题

spring方便我们的项目快速搭建,功能强大,自然也会是体系复杂! 这里说下配置文件properties管理的问题. 一些不涉及到代码逻辑,仅仅只是配置数据,可以放在xxxx.properties文件里面,项目功能复杂的时候,往往properties文件很多,这时,就比较容易让人困惑,有些properties的文件内容总是加载不起来,应用启动时,就不断爆出错误,说某某参数加载失败,这个是什么原因呢? 其实,这个是spring配置的时候,org.springframework.beans.fact

HTTP 错误 404.3 – Not Found 由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。

今天,在vs2013中新建了一个placard.json文件,当我用jq读取它的时候,去提示404,直接在浏览器访问这个文件,提示: HTTP 错误 404.3 – Not Found 由于扩展配置问题而无法提供您请求的页面.如果该页面是脚本,请添加处理程序.如果应下载文件,请添加 MIME 映射. 解决方案:进入IIS

由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。

错误: HTTP 错误 404.3 - Not Found 由于扩展配置问题而无法提供您请求的页面.如果该页面是脚本,请添加处理程序.如果应下载文件,请添加 MIME 映射. windows 8系统,运行aspx页面出现上述错误信息,解决办法如下: iis7  :控制面板->打开或关闭windows功能->Internet信息服务->万维网服务->应用程序开发功能,勾选上“.net扩展性”和“ASP.NET”,保存后,重启IIS服务器即可. iis8:控制面板->打开或关闭w

hibernate初次配置问题

1.自动创建表结构 在hibernate.cfg.xml配置文件中修改 ? 1 <property name="hibernate.hbm2ddl.auto">update</property> 另外注意数据库方言配置,以mysql为例,hibernate提供好几种方言,注意匹配自己的mysql类型 ? 1 <property name="hibernate.dialect">org.hibernate.dialect.MySQL

windows7系统,JDK的环境变量配置问题

困扰了几天的问题,今天终于解决了!!!!!!!!!!此时此刻正在感动中!!!!!感谢网上的大神发的贴子,为了感谢他们,我把我的经验分享如下... 1.在官网上下一个最新版的JDK按提示安装,可已安装在任意盘下,没必要也不建议安装在C盘 2.进入环境变量设置的方法:"计算机"右键"属性"--"高级系统设置"--"高级"--"环境变量"打开环境变量设置窗口. 3.在下面的"系统环境变量"设置

HTTP 错误 404.3 - Not Found 由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。

解决问题:由于扩展配置问题而无法提供您请求的页面.如果该页面是脚本,请添加处理程序.如果应下载文件,请添加 MIME 映射. WindowServer2012服务器,添加角色安装完.netframework和iis之后,运行aspx页面就报如下错误: HTTP 错误 404.3 - Not Found 由于扩展配置问题而无法提供您请求的页面.如果该页面是脚本,请添加处理程序.如果应下载文件,请添加 MIME 映射. ?可能是缺少处理程序映射.默认情况下,静态文件处理程序将处理所有内容.?您要使用

解决ArcGIS中因SDE或数据库配置问题而导致服务荡掉的一种思路

1.背景 最近连续有两个项目现场出现了AGS服务荡掉的问题,一个是通州现场,一个是福州现场. 1.1通州现场的问题描述和解决思路 通州现场环境为ArcGIS9.2,使用IMS发布的地图服务,其问题表现为每隔两天左右,其地形图服务便会崩溃一次,重启地形图服务后地图可以正常显示. 因为IMS中地图的出图为动态出图,所以其出图时需要通过连接SDE,此问题的出现很可能是SDE中最大连接数的问题. 1.2福州现场的问题描述和解决思路 福州现场环境为ArcGIS10.0,使用的ArcGIS Server发布

linuxYUM源配置问题

以前在linux5版本的时候,总是认为YUM目录一定要配置到具体的目录,今天看了网上的资料才知道自己想太多,直接配置到ISO挂载目录就可以了. 具体配置: [rhel-source] name=Red Hat Enterprise Linux $releasever - $basearch - Source baseurl=file:///software/RHEL6U5/ enabled=1 gpgcheck=0 我这里是直接在系统里面创建文件夹,复制ISO文件进来的,也就相当于直接挂载了IS

【Struts2】☆★之详解constant常量配置问题

[Struts2]☆★之详解constant常量配置问题 本文详细讲解web开发中使用Struts2时constant的常量配置问题 如下,constant添加位置 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" &qu