mysql增删改查:
public class MainActivity extends AppCompatActivity {
private EditText sqlEditText;
private Button queryButton, insertButton, updateButton, deleteButton;
private TextView resultTextView;
private static final String BASE_URL = "http://localhost:3000";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
sqlEditText = findViewById(R.id.sql_edit_text);
queryButton = findViewById(R.id.query_button);
insertButton = findViewById(R.id.insert_button);
updateButton = findViewById(R.id.update_button);
deleteButton = findViewById(R.id.delete_button);
resultTextView = findViewById(R.id.result_text_view);
queryButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String sql = sqlEditText.getText().toString();
query(sql);
}
});
insertButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String table = "users";
Map<String, String> data = new HashMap<>();
data.put("name", "John");
data.put("age", "30");
insert(table, data);
}
});
updateButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String table = "users";
Map<String, String> data = new HashMap<>();
data.put("name", "John Doe");
data.put("age", "35");
int id = 1;
update(table, data, id);
}
});
deleteButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String table = "users";
int id = 1;
delete(table, id);
}
});
}
private void query(String sql) {
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"sql\":\"" + sql + "\"}");
Request request = new Request.Builder()
.url(BASE_URL + "/query")
.post(body)
.build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
e.printStackTrace();
}
@Override
public void onResponse(Call call, Response response) throws IOException {
final String result = response.body().string();
runOnUiThread(new Runnable() {
@Override
public void run() {
resultTextView.setText(result);
}
});
}
});
}
private void insert(String table, Map<String, String> data) {
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
JSONObject jsonObject = new JSONObject(data);
RequestBody body = RequestBody.create(mediaType, "{\"table\":\"" + table + "\",\"data\":" + jsonObject.toString() + "}");
Request request = new Request.Builder()
.url(BASE_URL + "/insert")
.post(body)
.build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
e.printStackTrace();
}
@Override
public void onResponse(Call call, Response response) throws IOException {
final String result = response.body().string();
runOnUiThread(new Runnable() {
@Override
public void run() {
resultTextView.setText(result);
}
});
}
});
}
private void update(String table, Map<String, String> data, int id) {
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
JSONObject jsonObject = new JSONObject(data);
RequestBody body = RequestBody.create(mediaType, "{\"table\":\"" + table + "\",\"data\":" + jsonObject.toString() + ",\"id\":" + id + "}");
Request request = new Request.Builder()
.url(BASE_URL + "/update")
.post(body)
.build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
e.printStackTrace();
}
@Override
public void onResponse(Call call, Response response) throws IOException {
final String result = response.body().string();
runOnUiThread(new Runnable() {
@Override
public void run() {
resultTextView.setText(result);
}
});
}
});
}
private void delete(String table, int id) {
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"table\":\"" + table + "\",\"id\":" + id + "}");
Request request = new Request.Builder()
.url(BASE_URL + "/delete")
.post(body)
.build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
e.printStackTrace();
}
@Override
public void onResponse(Call call, Response response) throws IOException {
final String result = response.body().string();
runOnUiThread(new Runnable() {
@Override
public void run() {
resultTextView.setText(result);
}
});
}
});
}
}
上传下载文件:
public class MainActivity extends AppCompatActivity {
private Button uploadButton, downloadButton;
private TextView resultTextView;
private static final String BASE_URL = "http://localhost:3000";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
uploadButton = findViewById(R.id.upload_button);
downloadButton = findViewById(R.id.download_button);
resultTextView = findViewById(R.id.result_text_view);
uploadButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
uploadFile(file);
}
});
downloadButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
downloadFile(url, file);
}
});
}
private void uploadFile(File file) {
OkHttpClient client = new OkHttpClient();
RequestBody requestBody = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addFormDataPart("file", file.getName(), RequestBody.create(MediaType.parse("application/octet-stream"), file))
.build();
Request request = new Request.Builder()
.url("http://example.com/upload")
.post(requestBody)
.build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
Log.e(TAG, "Failed to upload file", e);
}
@Override
public void onResponse(Call call, Response response) throws IOException {
Log.d(TAG, "File uploaded successfully");
}
});
}
private void downloadFile(String url, File file) {
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url(url)
.build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
Log.e(TAG, "Failed to download file", e);
}
@Override
public void onResponse(Call call, Response response) throws IOException {
InputStream inputStream = response.body().byteStream();
OutputStream outputStream = new FileOutputStream(file);
byte[] buffer = new byte[4096];
int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, bytesRead);
}
outputStream.flush();
outputStream.close();
inputStream.close();
Log.d(TAG, "File downloaded successfully");
}
});
}