tag:blogger.com,1999:blog-28626937914807677632024-03-05T14:40:44.802-08:00Записки программистаИнструкции, шпаргалки, полезные ссылки и все такоеAnonymoushttp://www.blogger.com/profile/14481407226728619683noreply@blogger.comBlogger9125tag:blogger.com,1999:blog-2862693791480767763.post-45315244955945727032015-10-01T05:19:00.000-07:002015-10-01T05:24:49.652-07:00Mac OS X El Capitan<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
<span style="font-family: Arial, Helvetica, sans-serif;">Наверно больше для себя, что бы не забыть) Может еще кому пригодится...</span><span style="font-family: Arial, Helvetica, sans-serif;">В новой версии mac os изменилась политика по правам администраторов. </span><span style="font-family: Arial, Helvetica, sans-serif;">Теперь что бы работал SwitchXRes </span><span style="background-color: #fffefa; color: #212121; font-family: Arial, Helvetica, sans-serif; text-align: justify;">(пользуюсь монитором с нестандартным разрешением 2560x1080)</span><span style="font-family: Arial, Helvetica, sans-serif;"> необходимо отключить <span style="background-color: #fffefa; color: #212121;">System Integrity Protection (roolless)</span></span><span style="font-family: Arial, Helvetica, sans-serif;"><span style="background-color: #fffefa; color: #212121; text-align: justify;">делается это командой </span></span></div>
<div style="text-align: left;">
<span style="background-color: #fffefa; color: #212121; font-family: Courier, mono; text-align: justify;"><b><span style="font-size: large;">csrutil disable</span></b> </span><br />
<span style="background-color: #fffefa; color: #212121; font-family: Arial, Helvetica, sans-serif; text-align: justify;">выполняется из под recover-и режима (включается через CMD+R при загрузке, если кто забыл))</span></div>
<div style="text-align: left;">
<span style="background-color: #fffefa; color: #212121; font-family: Courier, mono; font-size: 13px; text-align: justify;"><br /></span><span style="color: #212121; font-family: Arial, Helvetica, sans-serif;"><span style="background-color: #fffefa;">А еще, - теперь проще включить TRIM (для кастомного Fusion Drive) </span></span></div>
<div style="text-align: left;">
<span style="color: #212121; font-family: Courier, mono;"><span style="background-color: #fffefa; font-size: 13px;"><br /></span></span></div>
<div style="text-align: left;">
<span style="font-size: large;"><b><span style="color: #212121; font-family: Courier, mono;"><span style="background-color: #fffefa;">trimforce enable</span></span><span style="background-color: #fffefa; color: #212121; font-family: Courier, mono; text-align: justify;"> </span></b></span><br />
<span style="background-color: #fffefa; color: #212121; font-family: Arial, Helvetica, sans-serif; text-align: justify;">Раньше приходилось пользоваться сторонними утилитами, которые патчили драйвера</span></div>
</div>
Anonymoushttp://www.blogger.com/profile/14481407226728619683noreply@blogger.com0tag:blogger.com,1999:blog-2862693791480767763.post-52871896115654608472015-02-23T22:29:00.004-08:002015-02-25T00:25:33.188-08:00Туториалы<div dir="ltr" style="text-align: left;" trbidi="on">
Тут буду собирать коллекцию ссылок на сайты с обучающими материалами<br />
<br />
<br />
<a href="http://www.mkyong.com/all-tutorials-on-mkyong-com">http://www.mkyong.com/all-tutorials-on-mkyong-com</a> Java8, Spring, Hibernate, JSF<br />
<a href="https://www.blogger.com/goog_1520987201"><br /></a>
<a href="http://www.ibm.com/developerworks/ru/views/java/libraryview.jsp">http://www.ibm.com/developerworks/ru/views/java/libraryview.jsp</a> по jvm based технологиям<br />
<br />
<a href="http://www.appcoda.com/">http://www.appcoda.com</a> swift, objective-c, ios</div>
Anonymoushttp://www.blogger.com/profile/14481407226728619683noreply@blogger.com0tag:blogger.com,1999:blog-2862693791480767763.post-82495644616105266332015-02-07T12:18:00.001-08:002015-02-07T12:24:23.961-08:00Работа с JSON типом данных в PosgreSQL <div dir="ltr" style="text-align: left;" trbidi="on">
<div dir="ltr" style="text-align: left;" trbidi="on">
Как оказалось, все довольно просто - без лишних слов привожу пример кода<br />
<br />
<div>
<br /></div>
<pre class="brush:java">public static void main(String[] args) {
try {
TestJson();
} catch (SQLException e) {
System.out.println("-- Error");
e.printStackTrace();
}
}
public static void TestJson() throws SQLException {
Connection c;
Statement stmt;
try {
try {
Class.forName("org.postgresql.Driver");
} catch (ClassNotFoundException e) {
System.out.println("А где ваш PostgreSQL JDBC драйвер? Включите в ваш library path!");
return;
}
c = DriverManager
.getConnection("jdbc:postgresql://localhost:5432/testdatabase", "postgres", "password");
c.setAutoCommit(false);
System.out.println("-- Opened database successfully");
String sql;
//-------------- CREATE TABLE ---------------
stmt = c.createStatement();
sql = "CREATE TABLE SAMPLE (ID INT PRIMARY KEY NOT NULL, DATA JSON)";
stmt.executeUpdate(sql);
stmt.close();
System.out.println("-- Table created successfully");
//--------------- INSERT ROW with JSON v1 ------------------
stmt = c.createStatement();
sql = "INSERT INTO SAMPLE (ID,DATA) VALUES (1, '{\"username\":\"alena\",\"post\":1024,\"email\":\"butakova.alena@gmail.com\" , \"blocked\":true }' );";
stmt.executeUpdate(sql);
//--------------- INSERT ROW with JSON v2 ------------------
int id = 2;
String jsonString = "{\"username\":\"igor\",\"posts\":2048,\"email\":\"igor.butakov@gmail.com\"}";
PGobject jsonObject = new PGobject();
jsonObject.setType("json");
jsonObject.setValue(jsonString);
PreparedStatement pstmt = c.prepareStatement("insert into sample (id, data) values (?, ?)");
pstmt.setInt(1, id);
pstmt.setObject(2, jsonObject);
pstmt.executeUpdate();
pstmt.close();
c.commit();
//--------------- SELECT DATA ------------------
//http://www.postgresql.org/docs/9.3/static/functions-json.html
//http://www.postgresql.org/docs/9.4/static/functions-json.html
stmt = c.createStatement();
ResultSet rs = stmt.executeQuery( "SELECT id, DATA, DATA::json->>'username' AS name FROM SAMPLE where DATA::json->>'blocked'='true' ;" );
while ( rs.next() ) {
int objectid = rs.getInt("id");
String obj = rs.getString("data");
String name = rs.getString("name");
System.out.println(String.format("ID=%s, DATA=%s, NAME=%s",objectid,obj, name));
}
rs.close();
stmt.close();
System.out.println("-- Operation SELECT done successfully");
c.close();
} catch (Exception e) {
e.printStackTrace();
System.err.println(e.getClass().getName()+": "+e.getMessage());
System.exit(0);
}
System.out.println("-- All Operations done successfully");
}
</pre>
</div>
<br />
соответственно после запуска будет выведено<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjoGeucdxjyV2Rkev8UoGKKoFciYNdorQ8izeLnAcyF5iW5VsqEpn0BHwIlXUROESosmiTAJO_mM1vlsjB6BgB-A57SCUXdcksqKrs00J6pFxa7F2rEhK4_hz0z1ht6ARM5uPEcoQR0RyQ/s1600/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82+2015-02-08+02.12.07.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjoGeucdxjyV2Rkev8UoGKKoFciYNdorQ8izeLnAcyF5iW5VsqEpn0BHwIlXUROESosmiTAJO_mM1vlsjB6BgB-A57SCUXdcksqKrs00J6pFxa7F2rEhK4_hz0z1ht6ARM5uPEcoQR0RyQ/s1600/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82+2015-02-08+02.12.07.png" height="95" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
и в базе данных появится табличка с данными</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi901UGfzYaozWHEq1zdCjs4KQ4YI7BfPkX8QEEOdhC_WLGxlpe_Cr8fXGzdS_Wz9zx3nbU9_MbZSICH7bp-g0OpZNUhCd9mm_wJM9juLfA40JjI8aLfJkyMgsVSLpv7wMY78mTGLvNobw/s1600/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82+2015-02-08+02.11.52.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi901UGfzYaozWHEq1zdCjs4KQ4YI7BfPkX8QEEOdhC_WLGxlpe_Cr8fXGzdS_Wz9zx3nbU9_MbZSICH7bp-g0OpZNUhCd9mm_wJM9juLfA40JjI8aLfJkyMgsVSLpv7wMY78mTGLvNobw/s1600/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82+2015-02-08+02.11.52.png" height="382" width="640" /></a></div>
<br /></div>
Anonymoushttp://www.blogger.com/profile/14481407226728619683noreply@blogger.com0tag:blogger.com,1999:blog-2862693791480767763.post-1209937886554185142015-02-07T03:35:00.003-08:002015-02-07T10:47:42.234-08:00Работа с PostgreSQL в Java<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: left;">
Создаем базу данных в PostgreSQL</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Создаем новый проект в IDEA (в примере версия 14)</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPrjaQrR2b7O65JaCO6GAytgnMfWlUA6WhKmkML7zYP-afFwzqepAu9Yub99SDQY1ezQzPSlB9588c0exOTNHfVSqvhhUf7N77JrpmRW0iL2GWFb3bjmTyMA1OclE8U27oIUpnHMjXzDs/s1600/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82+2015-02-07+17.03.33.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPrjaQrR2b7O65JaCO6GAytgnMfWlUA6WhKmkML7zYP-afFwzqepAu9Yub99SDQY1ezQzPSlB9588c0exOTNHfVSqvhhUf7N77JrpmRW0iL2GWFb3bjmTyMA1OclE8U27oIUpnHMjXzDs/s1600/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82+2015-02-07+17.03.33.png" height="300" width="400" /></a></div>
<span id="goog_1900501800"></span><span id="goog_1900501801"></span><br />
<a name='more'></a><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjV_9YiyQ8Gls5gBSbKfbcOE4J3zjI8n3KMrD_TFKXwTl39OJqWRIffhYjAQNq5GvEbMh1zAud9j0TmxaYX0TE9Uo_xYrf1IFeKhiMsosiCoUX4-xVpJhIwbaz5rXWuHU6rhb7QCMiQAEs/s1600/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82+2015-02-07+17.10.09.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjV_9YiyQ8Gls5gBSbKfbcOE4J3zjI8n3KMrD_TFKXwTl39OJqWRIffhYjAQNq5GvEbMh1zAud9j0TmxaYX0TE9Uo_xYrf1IFeKhiMsosiCoUX4-xVpJhIwbaz5rXWuHU6rhb7QCMiQAEs/s1600/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82+2015-02-07+17.10.09.png" height="301" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9tUL7Q-XVaKMiIvY9MsrFnCErKw8V5rY1blCNIPQ8H7sBZFsaAUwJCxv0tOcoOWGRHttYG5qImLFTU9_eO-DC50k4L9hKHwgGlXTaZ-0esaZBInaLAsx5-pvyEMTi-o0rbkGlKE067_c/s1600/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82+2015-02-07+17.11.51.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9tUL7Q-XVaKMiIvY9MsrFnCErKw8V5rY1blCNIPQ8H7sBZFsaAUwJCxv0tOcoOWGRHttYG5qImLFTU9_eO-DC50k4L9hKHwgGlXTaZ-0esaZBInaLAsx5-pvyEMTi-o0rbkGlKE067_c/s1600/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82+2015-02-07+17.11.51.png" height="231" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Скачиваем последнюю версию JDBC драйвера с репозитория <a href="https://jdbc.postgresql.org/download.html">https://jdbc.postgresql.org/download.html</a> </div>
<div class="separator" style="clear: both; text-align: left;">
Добавляем ее в библиотеки</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjV2P3qA3Hd0poR87SBcelL1azSk0Pmj_kRs2zitoMLP1Gph72vb9cR5tBC6lYwtLemf3mzsucTPC04vPnKebo0jcfgHioUsxJpDwqDrkTsPmWsbxjbC-F0Ytz-oHMx_fMTLnw-qBkFYaM/s1600/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82+2015-02-07+17.21.44.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjV2P3qA3Hd0poR87SBcelL1azSk0Pmj_kRs2zitoMLP1Gph72vb9cR5tBC6lYwtLemf3mzsucTPC04vPnKebo0jcfgHioUsxJpDwqDrkTsPmWsbxjbC-F0Ytz-oHMx_fMTLnw-qBkFYaM/s1600/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82+2015-02-07+17.21.44.png" height="323" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Ну и собственно полный код примера, - вставляем в основной класс и добавляем его вызов в main.</div>
<br />
<pre class="brush:java"> public static void TestDatabase() {
Connection c;
Statement stmt;
try {
Class.forName("org.postgresql.Driver");
c = DriverManager
.getConnection("jdbc:postgresql://localhost:5432/testbase","postgres", "password");
c.setAutoCommit(false);
System.out.println("-- Opened database successfully");
String sql;
//-------------- CREATE TABLE ---------------
stmt = c.createStatement();
sql = "CREATE TABLE COMPANY " +
"(ID INT PRIMARY KEY NOT NULL," +
" NAME TEXT NOT NULL, " +
" AGE INT NOT NULL, " +
" ADDRESS VARCHAR(50), " +
" SALARY REAL)";
stmt.executeUpdate(sql);
stmt.close();
c.commit();
System.out.println("-- Table created successfully");
//--------------- INSERT ROWS ---------------
stmt = c.createStatement();
sql = "INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (1, 'Paul', 32, 'California', 20000.00 );";
stmt.executeUpdate(sql);
sql = "INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (2, 'Allen', 25, 'Texas', 15000.00 );";
stmt.executeUpdate(sql);
sql = "INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (3, 'Teddy', 23, 'Norway', 20000.00 );";
stmt.executeUpdate(sql);
sql = "INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (4, 'Mark', 25, 'Rich-Mond ', 65000.00 );";
stmt.executeUpdate(sql);
stmt.close();
c.commit();
System.out.println("-- Records created successfully");
//-------------- UPDATE DATA ------------------
stmt = c.createStatement();
sql = "UPDATE COMPANY set SALARY = 25000.00 where ID=1;";
stmt.executeUpdate(sql);
c.commit();
stmt.close();
System.out.println("-- Operation UPDATE done successfully");
//--------------- SELECT DATA ------------------
stmt = c.createStatement();
ResultSet rs = stmt.executeQuery( "SELECT * FROM COMPANY;" );
while ( rs.next() ) {
int id = rs.getInt("id");
String name = rs.getString("name");
int age = rs.getInt("age");
String address = rs.getString("address");
float salary = rs.getFloat("salary");
System.out.println(String.format("ID=%s NAME=%s AGE=%s ADDRESS=%s SALARY=%s",id,name,age,address,salary));
}
rs.close();
stmt.close();
c.commit();
System.out.println("-- Operation SELECT done successfully");
//-------------- DELETE DATA ----------------------
stmt = c.createStatement();
sql = "DELETE from COMPANY where ID=2;";
stmt.executeUpdate(sql);
c.commit();
stmt.close();
System.out.println("-- Operation DELETE done successfully");
c.close();
} catch (Exception e) {
e.printStackTrace();
System.err.println(e.getClass().getName()+": "+e.getMessage());
System.exit(0);
}
System.out.println("-- All Operations done successfully");
}
</pre>
компилируем, запускаем, в окне вывода видим примерно следующее<br />
<br />
<span style="color: #38761d; font-family: Trebuchet MS, sans-serif; font-size: x-small;">-- Opened database successfully</span><br />
<span style="color: #38761d; font-family: Trebuchet MS, sans-serif; font-size: x-small;">-- Table created successfully</span><br />
<span style="color: #38761d; font-family: Trebuchet MS, sans-serif; font-size: x-small;">-- Records created successfully</span><br />
<span style="color: #38761d; font-family: Trebuchet MS, sans-serif; font-size: x-small;">-- Operation UPDATE done successfully</span><br />
<span style="color: #38761d; font-family: Trebuchet MS, sans-serif; font-size: x-small;">ID=2 NAME=Allen AGE=25 ADDRESS=Texas SALARY=15000.0</span><br />
<span style="color: #38761d; font-family: Trebuchet MS, sans-serif; font-size: x-small;">ID=3 NAME=Teddy AGE=23 ADDRESS=Norway SALARY=20000.0</span><br />
<span style="color: #38761d; font-family: Trebuchet MS, sans-serif; font-size: x-small;">ID=4 NAME=Mark AGE=25 ADDRESS=Rich-Mond SALARY=65000.0</span><br />
<span style="color: #38761d; font-family: Trebuchet MS, sans-serif; font-size: x-small;">ID=1 NAME=Paul AGE=32 ADDRESS=California SALARY=25000.0</span><br />
<span style="color: #38761d; font-family: Trebuchet MS, sans-serif; font-size: x-small;">-- Operation SELECT done successfully</span><br />
<span style="color: #38761d; font-family: Trebuchet MS, sans-serif; font-size: x-small;">-- Operation DELETE done successfully</span><br />
<span style="color: #38761d; font-family: Trebuchet MS, sans-serif; font-size: x-small;">-- All Operations done successfully</span><br />
<br />
ну и соответственно результат, - наши записи в базе данных<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDW66Wl81qb-9u7QKDfkfL2losAtFM7r7vWGTbZMBftMW_oCCS6sfErp3vVmGqFzrvdjJY7RODzBKvW79BJYmCSRdwny0bd8ozxp_90qexn0p8pGKbStGZz1-SvfsSmMBiUPFh8evp1bA/s1600/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82+2015-02-07+17.32.54.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDW66Wl81qb-9u7QKDfkfL2losAtFM7r7vWGTbZMBftMW_oCCS6sfErp3vVmGqFzrvdjJY7RODzBKvW79BJYmCSRdwny0bd8ozxp_90qexn0p8pGKbStGZz1-SvfsSmMBiUPFh8evp1bA/s1600/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82+2015-02-07+17.32.54.png" height="378" width="640" /></a></div>
<br /></div>
Anonymoushttp://www.blogger.com/profile/14481407226728619683noreply@blogger.com2tag:blogger.com,1999:blog-2862693791480767763.post-66104365053380055242015-02-06T23:47:00.003-08:002015-02-06T23:47:55.797-08:00Настройка SSL на Jetty<div dir="ltr" style="text-align: left;" trbidi="on">
http://blog.knoldus.com/2013/09/10/configure-ssl-on-jetty-server-to-run-it-with-https/</div>
Anonymoushttp://www.blogger.com/profile/14481407226728619683noreply@blogger.com0tag:blogger.com,1999:blog-2862693791480767763.post-14893891640914031322015-02-06T23:31:00.002-08:002015-02-06T23:31:17.109-08:00Шпаргалки<div dir="ltr" style="text-align: left;" trbidi="on">
<h3 style="text-align: left;">
Git</h3>
<a href="http://eax.me/git-commands/">http://eax.me/git-commands/</a><br />
<br /></div>
Anonymoushttp://www.blogger.com/profile/14481407226728619683noreply@blogger.com1tag:blogger.com,1999:blog-2862693791480767763.post-84039653661475536632015-02-06T23:24:00.000-08:002015-02-06T23:27:06.727-08:00Кроссплатформенные штуки для Android и iOS <div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: left;">
Особо ничего не расписываю, - так собрал в одном месте ссылки<br />
<br /></div>
<h3 style="text-align: left;">
Oracle Mobile Application Framework (Java)</h3>
<a href="http://www.oracle.com/technetwork/developer-tools/maf/overview/index.html">http://www.oracle.com/technetwork/developer-tools/maf/overview/index.html</a><br />
<br />
<h3 style="text-align: left;">
Unity (Mono)</h3>
<div style="text-align: left;">
<a href="http://unity3d.com/">http://unity3d.com/</a></div>
<h3 style="text-align: left;">
</h3>
<h3 style="text-align: left;">
Xamarin (Mono)</h3>
<a href="http://xamarin.com/">http://xamarin.com/</a><br />
<br />
<h3 style="text-align: left;">
RAD Studio XE7 (Native)</h3>
<a href="http://www.embarcadero.com/products/rad-studio">http://www.embarcadero.com/products/rad-studio</a><br />
<br />
<h3 style="text-align: left;">
Marmalade (Native)</h3>
https://www.madewithmarmalade.com/index<br />
<br />
<h3 style="text-align: left;">
Apache Cordova (HTML, JavaScript)</h3>
<span style="background-color: white; font-size: 12px; line-height: 18px;"><span style="color: #2c2b2b; font-family: arial;"><a href="http://cordova.apache.org/">http://cordova.apache.org/</a></span></span><br />
<br />
<h3 style="text-align: left;">
SenchaTouch</h3>
<a href="http://www.sencha.com/products/touch/">http://www.sencha.com/products/touch/</a><br />
<br />
<h3 style="text-align: left;">
PhoneGap (HTML, JavaScript)</h3>
<span style="background-color: white; font-size: 12px; line-height: 18px;"><span style="color: #2c2b2b; font-family: arial;"><a href="http://phonegap.com/">http://phonegap.com/</a></span></span><br />
<span style="background-color: white; font-size: 12px; line-height: 18px;"><br /></span>
<br />
<h3 style="text-align: left;">
Appcelerator (HTML, JavaScript)</h3>
<div>
<a href="http://www.appcelerator.com/" style="font-family: arial; font-size: 12px; line-height: 18px;">http://www.appcelerator.com/</a></div>
<br /></div>
Anonymoushttp://www.blogger.com/profile/14481407226728619683noreply@blogger.com3tag:blogger.com,1999:blog-2862693791480767763.post-78458408906904898762015-02-06T11:04:00.000-08:002015-02-09T22:43:58.886-08:00Список популярных ORM для Android и Java разработчика<div dir="ltr" style="text-align: left;" trbidi="on">
<h3 style="text-align: left;">
GreenDAO (быстрая ORM для Android и SQLite)</h3>
<a href="https://github.com/greenrobot/greenDAO">https://github.com/greenrobot/greenDAO</a><br />
<a href="http://greendao-orm.com/documentation/">http://greendao-orm.com/documentation/</a><br />
<br />
<h3 style="text-align: left;">
SPRING (JPA)</h3>
<a href="http://projects.spring.io/spring-data/">http://projects.spring.io/spring-data/</a><br />
<a href="http://spring.io/">http://spring.io/</a><br />
<div style="text-align: left;">
простота, скорость и без велосипедов<br />
+ дополнения-расширения<br />
<a href="http://www.querydsl.com/">http://www.querydsl.com/</a><br />
<br />
<a href="http://habrahabr.ru/post/248541/">http://habrahabr.ru/post/248541/</a> туториал Spring MVC3, аннотации Hibernate, MySQL<br />
http://habrahabr.ru/post/249073/ Spring - Hibernate ассоциации один ко многим<br />
http://habrahabr.ru/post/222077/ Java 8, Spring, Hibernate<br />
http://habrahabr.ru/post/193140/ Работа с шедулером<br />
http://habrahabr.ru/post/139421/ Spring Data на примере JPA</div>
<br />
<h3 style="text-align: left;">
ORM Lite (Java ORM с поддержкой SQL баз)</h3>
<a href="http://ormlite.com/">http://ormlite.com/</a><br />
<a href="http://ormlite.com/sqlite_java_android_orm.shtml">http://ormlite.com/sqlite_java_android_orm.shtml</a><br />
<a href="https://github.com/jakenjarvis/Android-OrmLiteContentProvider">https://github.com/jakenjarvis/Android-OrmLiteContentProvider</a><br />
<br />
<h3 style="text-align: left;">
SugarORM (ORM для android)</h3>
<a href="http://satyan.github.io/sugar/getting-started.html">http://satyan.github.io/sugar/getting-started.html</a><br />
есть утечки памяти, плохо<br />
<br />
<h3 style="text-align: left;">
ActiveAndroid</h3>
<a href="http://www.activeandroid.com/">http://www.activeandroid.com/</a><br />
<br />
<h3 style="text-align: left;">
Androrm</h3>
<a href="http://www.androrm.com/">http://www.androrm.com/</a><br />
<h3 style="text-align: left;">
OrmDroid</h3>
<a href="https://github.com/roscopeco/ormdroid">https://github.com/roscopeco/ormdroid</a><br />
<br />
<h3 style="text-align: left;">
Hibernate (JPA)</h3>
<a href="http://hibernate.org/">http://hibernate.org/</a><br />
<h4 style="text-align: left;">
статьи</h4>
<div>
<a href="http://krams915.blogspot.ru/2011/03/spring-hibernate-one-to-many.html">http://krams915.blogspot.ru/2011/03/spring-hibernate-one-to-many.html</a></div>
<div>
<a href="http://krams915.blogspot.ru/p/tutorials.html">http://krams915.blogspot.ru/p/tutorials.html</a> туториалы на все аспекты применения</div>
<h4 style="text-align: left;">
переводы</h4>
<a href="http://habrahabr.ru/post/234841/">http://habrahabr.ru/post/234841/</a> Hibernate и PostgreSQL JSON Type<br />
<a href="http://habrahabr.ru/post/135176/">http://habrahabr.ru/post/135176/</a> Hibernate cache<br />
<br />
<h3>
Realm.io (NO SQL ORM для Android и iOS)</h3>
<a href="http://realm.io/">http://realm.io/</a><br />
<br />
<h3 style="text-align: left;">
Morphia (ORM для MongoDB)</h3>
<a href="https://github.com/mongodb/morphia">https://github.com/mongodb/morphia</a><br />
<a href="http://habrahabr.ru/post/118783/">http://habrahabr.ru/post/118783/</a><br />
<br />
<h3 style="text-align: left;">
Parse.com (BackEnd, но есть локальное хранилище NoSQL)</h3>
<a href="http://parse.com/">http://Parse.com</a><br />
<br />
<h3 style="text-align: left;">
Прочее для Android</h3>
<a href="https://bitbucket.org/qbusict/cupboard/wiki/Home">https://bitbucket.org/qbusict/cupboard/wiki/Home</a><br />
<a href="https://github.com/pushtorefresh/bamboo-storage">https://github.com/pushtorefresh/bamboo-storage</a><br />
<br /></div>
Anonymoushttp://www.blogger.com/profile/14481407226728619683noreply@blogger.com0tag:blogger.com,1999:blog-2862693791480767763.post-19123449932354710062014-07-03T23:12:00.001-07:002015-02-06T23:44:05.478-08:00Ошибка Failure [INSTALL_PARSE_FAILED_MANIFEST_MALFORMED] в Andrid Studio 0.8.1<div dir="ltr" style="text-align: left;" trbidi="on">
<div dir="ltr" style="text-align: left;" trbidi="on">
Наткнулся недавно на баг/фичу в Andrid Studio 0.8.1<br />
<br />
Создаю чистый проект, - на автомате в поле company domain вбиваю имя пакета ru.Team55.Tests.<br />
<br />
Пытаюсь запустить на устройстве, получаю<br />
Failure [INSTALL_PARSE_FAILED_MANIFEST_MALFORMED]<br />
<br />
<a name='more'></a><div style="text-align: left;">
<span style="font-family: inherit;"><br /><br />Смотрю в конфиг:</span><br />
<pre class="brush:javascript">
apply plugin: 'com.android.application'
android {
defaultConfig {
dependencies {
compileSdkVersion 20
buildToolsVersion "20.0.0"
applicationId "Tests.Team55.ru.uitest"
minSdkVersion 8
targetSdkVersion 20
versionCode 1
versionName "1.0"
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:19.+'
}
</pre>
</div>
<div style="text-align: left;">
<span style="font-family: inherit;">
</span></div>
<div style="text-align: left;">
<span style="font-family: inherit;"><br /></span></div>
<div style="text-align: left;">
<span style="font-family: inherit;"><br /></span></div>
</div>
<div style="text-align: left;">
<span style="font-family: inherit;">Все понятно - давняя проблема, имя пакета не должно начинаться с большой буквы.<br />Выводы - внимательно читаем надписи при создании проекта - могут быть изменения :-) </span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqe6MokjgWFVfjBoCCR9awCTcX2ZT-2kZ4LQM8Dm0TeXqldurCnZ35eoFBbImYkLjDzf6HPYzcZXWomOA4JhdW15wbGzlLBk4N5j3onWAg1e9NHOaTTg8NVADe90RhkxbXw58CqXEP3-U/s1600/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqe6MokjgWFVfjBoCCR9awCTcX2ZT-2kZ4LQM8Dm0TeXqldurCnZ35eoFBbImYkLjDzf6HPYzcZXWomOA4JhdW15wbGzlLBk4N5j3onWAg1e9NHOaTTg8NVADe90RhkxbXw58CqXEP3-U/s1600/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA.PNG" height="247" width="320" /></a></div>
<br />
<div style="text-align: left;">
<span style="font-family: inherit;">Рефакторю - запускаю, - все ОК</span></div>
<div style="text-align: left;">
<span style="font-family: Courier New, Courier, monospace; font-size: x-small;"><br /></span></div>
<br />
<br /></div>Anonymoushttp://www.blogger.com/profile/14481407226728619683noreply@blogger.com0