Tables | Are | Cool |
---|---|---|
col 1 is | l | $1600 |
col 2 is | c | $12 |
col 3 is | a | $1 |
var git = require('gulp-git'); | |
var replace = require('gulp-replace'); | |
var sonar = require('gulp-sonar'); | |
var util = require('util'); | |
/* | |
SONAR | |
*/ |
-
More RoRish framework (APIwise)
If you are talking about expressiveness and developer friendly, I think ActFramework is really hitting this point!
-
So that on scalability issue or JVM migration, people can easily switch to this framework. This will be a big selling point. (Migration script will be a bigggg selling point!)
Comparing to Play, Act is using standard maven project layout, using maven to manage the dependencies, using google guice to manage the depedency injection. It's more easier for developer to move from place like SpringFramework. Actually I specifically designed Act so that it get the greatest part from Play but without those very special requirements on project layout/static method in controller etc in play.
-
More RoRish in terms of convention over configuration
I am happy to share my recent Open Source project ActFramework here.
So some events about ActFramework:
-
Three years ago I was thinking of creating an new Java MVC framework.
-
About one year ago I start working on ActFramework.
<?xml version="1.0" encoding="UTF-8"?> | |
<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.mycom</groupId> | |
<artifactId>myapp</artifactId> | |
<version>1.0.0-SNAPSHOT</version> | |
<packaging>jar</packaging> | |
<name>My Act Application</name> | |
<?xml version="1.0"?> | |
<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> | |
<fontconfig> | |
<!-- | |
Documented at | |
http://linux.die.net/man/5/fonts-conf | |
To check font mapping run the command at terminal | |
$ fc-match 'helvetica Neue' |
public class FastJsonSerializeIterableTest { | |
@Test | |
public void testWithIterable() { | |
class Person { | |
private String name; | |
public Person(String s) { | |
this.name = s; | |
} | |
public String getName() { | |
return name; |
@args com.helper.myObj.MyObject myObj SKU, Group ID, Locale, Channel ID, Item ID, Status, Message1 ID, Message1, Message2 ID, Message2, Message3 ID, Message3, Message4 ID, Message4, Message5 ID, Message5 | |
@for(com.helper.myObj.MyObject myObj : myObjects) { | |
@myObj.getSku(),@myObj.getGroupId(),@myObj.getLocale(), @myObj.getChannelId(), @myObj.getItemId(), @myObj.getOverallStatus(), @for(main.rythm.ErrorObject eo : myObj.getErrObj()).join(","){@eo.getErrId(),@eo.getErrMsg()} | |
} |
MongoTemplate mongo = ...; | |
List<Converter> converters = new ArrayList<Converter>(); | |
converters.add(new Converter<DBObject, Participant>() { | |
public Participant convert(DBObject s) { | |
throw new UnsupportedOperationException("Not supported yet 1."); | |
} | |
}); | |
converters.add(new Converter<Participant, DBObject>() { |
import java.util.Arrays; | |
/** | |
* Created by luog on 22/07/2014. | |
*/ | |
public class SortIntArray { | |
private static int[] ia; | |
private static void initArray(String[] args) { | |
if (args.length > 0) { |