我爱编程天工开物简书野生作者协会

编程星球——水·滴20180624期

2018-06-27  本文已影响61人  孙亖

[TOC]

2018/5/14

#水·滴# 微信开发调试两个有用的网页工具链接:

X5内核调试专用页 http://debugx5.qq.com/

X5内核调试专用页 (http://debugtbs.qq.com/

2018/5/16

Vscode下快速开始编写html的方法

  1. 首先在第一行输入!
  2. 然后将光标移动到!
  3. 最后,按下tab键 4.完成

2018/5/17

#水·滴# 使用 jdk9 运行报错:Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
原因:Java9以后JAXB APIs划分为Java EE模块,不再认为是SE模块,而默认的路径只包含了SE模块中。
方案1:
虽然路径没有包含,但是JDK中包含了EE模块,可以通过命令行参数添加需要的模块,例如:
--add-modules java.xml.bind
还有这些:

如果9以下版本使用该参数会出错,可以使用-XX:+IgnoreUnrecognizedVMOptions命令行参数忽略,但使用该参数后会导致jvm不验证参数。最好是在脚本中检查版本在生成相应的命令行。
方案2:
mvn配置中添加插件:

<plugin>
    <artifactId>maven-surefire-plugin<artifactId>
    <version>2.20.1<version>
    <configuration>
        <argLine>--add-modules java.xml.bind<argLine>
    <configuration>
<plugin>

方案3:
直接导入缺失的包:

<!-- Java 6 = JAX-B Version 2.0   -->
<!-- Java 7 = JAX-B Version 2.2.3 -->
<!-- Java 8 = JAX-B Version 2.2.8 -->
<dependencies>
    <dependency>
        <groupId>javax.xml.bind</groupId>
        <artifactId>jaxb-api</artifactId>
        <version>2.3.0</version>
    </dependency>
    <dependency>
        <groupId>com.sun.xml.bind</groupId>
        <artifactId>jaxb-impl</artifactId>
        <version>2.3.0</version>
    </dependency>
    <dependency>
        <groupId>com.sun.xml.bind</groupId>
        <artifactId>jaxb-core</artifactId>
        <version>2.3.0</version>
    </dependency>
    <dependency>
        <groupId>javax.activation</groupId>
        <artifactId>activation</artifactId>
        <version>1.2.0</version>
    </dependency>
</dependencies>

2018/5/21

#水·滴# Spring Data Query方法的属性表达式中,如果描述嵌入对象的属性,直接添加,例如:

List<Person> findByAddressZipCode(ZipCode zipCode); 

相当于: x.address.zipCode 但有时可能会出现冲突或混淆,可以用下划线区分:

 List<Person> findByAddress_ZipCode(ZipCode zipCode); 

参考文档:Spring Data 之 Property Expressions

2018/5/22

#水·滴# Groovy变态的语法糖: 变量不加def,将变量添加到当前脚本的binding,一般看作全局变量。

x = 1
assert x == 1
assert this.binding.getVariable("x") == 1

def y = 2

assert y == 2

try {
    this.binding.getVariable("y") 
} catch (groovy.lang.MissingPropertyException e) {
    println "error caught"
} 
Prints: "error caught"

2018/5/24

#水·滴# 一个JavaWebApp多个实例部署在一个容器(Tomcat)报错:

Web app root system property already set to different value: 'webapp.root' = [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\myapp] instead of [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\myapp2] - Choose unique values for the 'webAppRootKey' context-param in your web.xml files!

解决方法,设置不同的webAppRootKey,避免冲突,例如:

<!--app1中的web.xml-->
<context-param>
    <param-name>webAppRootKey</param-name>
    <param-value>app1.root</param-value>
</context-param>
 
<!--app2中的web.xml-->
<context-param>
    <param-name>webAppRootKey</param-name>
    <param-value>app2.root</param-value>
</context-param>

2018/5/25

#水·滴# Python print 小窍门: end 参数用在print 函数中作用是打印一行并允许下一次打印在同一行继续。这是一个让 print 能够不在末尾打印出\n(换行符)符号的小窍门。

2018/5/25

#水·滴# Win10 Linux Subsystem 路径:

C:\Users<username>\AppData\Local\Packages<group_name>\LocalState

2018/6/9

#水·滴# windows 下MongoDB服务配置安装:

  1. 编写Mongodb配置文件
systemLog:
  destination: "file"
  path: "c:\\data\\log\\mongod.log"
storage:
  dbPath: "c:\\data\\db"
  1. 安装服务
"C:\Program Files\MongoDB\Server\3.6\bin\mongod.exe" ^
  --config "C:\Program Files\MongoDB\Server\3.6\mongod.cfg" ^
  --install

对于我是:

mongod  --config "D:\Data\MongoDB\mongod.cfg" --install

2018/6/13

#水·滴# 微软在 4 月 18 那天发布了题为《Windows Command Reference》的 PDF 文档,内容达到了惊人的 948 页,全面覆盖了超过 250 个 Windows 控制台命令。

链接:https://download.microsoft.com/download/5/8/9/58911986-D4AD-4695-BF63-F734CD4DF8F2/ws-commands.pdf

2018/6/13

#水·滴# Angular ng serve 时报错:

Could not resolve submodule for for routing:

原因路由配置问题:

export const ROUTES: Routes = [
  {path: '', loadChildren: 'app/home#HomeModule'},
  {path: '**', component: NotFoundComponent},
];

解决方法: 使用路由配置文件的相对路径,例如:

export const ROUTES: Routes = [
  {path: '', loadChildren: './home#HomeModule'},
  {path: '**', component: NotFoundComponent},
];

2018/6/14

#水·滴# Angular是目前最火的前端框架,常用的资源可以看官方网站:

链接:Angular Docs https://angular.io/resources

还有对应的中文网站:

链接:Angular Docs https://angular.cn/

另外,介绍几个我常用的第三方组件:

界面组件首选Ant: 链接:NG-ZORRO - Ant Design Of Angular https://ng.ant.design/

备选Primary: 链接:PrimeNG https://www.primefaces.org/primeng

还有官方的Material2: 链接:GitHub - angular/material2: Material Design compon...

移动端开发OnsenUI: 链接:Angular and AngularJS UI Components by Onsen UI Hy...

2018/6/14

#水滴# SqlServer从源表同步数据的语法:

--同步两个表的神奇语句
merge into TargetTable as t
using SourceTable as s
on t.id = s.id
when matched --源表和目标表存在同样ID是,更新目标表数据
then update set t.val=s.val
when not matched --目标表不存在源表数据,目标表插入源数据
then insert values(s.id, s.val)
when not matched by source --源表中不存在的数据,目标表删除
then delete;

一个实际的例子:

--同步两个表的神奇语句
merge into T_Site_Type as t
using (select * from T_Site_Type where Serial={Serial}) as s
on t.Serial = s.Serial
when matched --源表和目标表存在同样ID是,更新目标表数据
then update set t.TypeName = '雨水总排口监测点22211111'
when not matched --目标表不存在源表数据,目标表插入源数据
then insert  (TypeId, TypeName, Serial) values(s.TypeId, s.TypeName, s.Serial);
when not matched by source --源表中不存在的数据,目标表删除
then delete;

2018/6/14

#水·滴# 一段代码演示一下Python的异常处理:

def except_test(num):
    if num < 1:
        raise Exception("我错了")
condition = 1     
try:
    except_test(condition)
except Exception as arg:
    print("不好,发生异常")
    print(arg)
else:
    print("火箭发射正常")
finally:
    print("收工")

2018/6/20

#水·滴# 基于maven的Kotlin和Java混合项目,如果需要设置不同的源码路径,可以使用build-helper-maven-plugin插件,例如:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>build-helper-maven-plugin</artifactId>
    <version>3.0.0</version>
    <executions>
        <execution>
            <id>add-source</id>
            <phase>generate-sources</phase>
            <goals>
                <goal>add-source</goal>
            </goals>
            <configuration>
                <sources>
                    <source>src/main/java</source>
                </sources>
            </configuration>
        </execution>
    </executions>
</plugin>

2018/6/21

#水·滴# 使用VS创建MVC Controller时报错:

EntityType 'XXXXX' has no key defined. Define the key for this EntityType。

可能是以下几种原因:

2018/6/21

#水·滴# C#类字段属性区别:

字段一般用在类的内部使用,属性一般供外部类访问。按照类的设计原则,字段都是private的,只能在类的内部使用,如果是public的,那么外部类谁都有可能访问,对字段进行破坏性的修改,这是我们不希望看到的,所以字段一定是private的。

属性相当于是给字段加了一个保护套,如果想读这个字段的值,属性里面走的一定是get{},如果想给字段赋值,属性里一定走的是set{},那么程序员可以在get{}和set{}中增加一些限制,验证要赋值的内容,或者让某个字段只能读不能赋值(对应该字段的的属性只让它有get{},不写set{})。对于外部使用者来说只能够使用它,不能控制它,如何控制操作是由类自身决定的(或者说是由程序员决定的,嘿嘿~)。

另外,字段值可以用作ref、out参数,而属性不能。

快问码.jpg 微信群20180704前有效.png微信群20180704前有效.png
上一篇下一篇

猜你喜欢

热点阅读